c语言数据结构队列链表 200C

4个回答

void delException();//专门删掉新新数字添加到队列后,两个相邻的一阶导数之差太大的数

#define DN 5
static int filter_buff[DN] = {0};
static int currdata_ptr = 0;

int Filter(int din)
{

int i, j, temp;
long sum = 0;

``````// currdata_ptr指向最旧的数据，并且需要卷回
if(currdata_ptr >= DN) {
currdata_ptr = 0;
}
filter_buff[currdata_ptr++] = din;

// 进行排序，filter_buff[0]为最小值，filter_buff[DN-1]为最大值;
for (j=0;j<DN-1;j++)
{
for (i=0;i<DN-j;i++)
{
if(filter_buff[i]>filter_buff[i+1]) {
temp =filter_buff[i];
filter_buff[i] =filter_buff[i+1];
filter_buff[i+1] = temp;
}
}
sum += filter_buff[j];
}
// 去除最小值（最大值没有参与求和）
// 中位值平均滤波
sum -= filter_buff[0];

return (sum/(DN-2));
``````

}

// 上面是进行滤波的算法，去掉5个数中的最大值和最小值，输出平均值。
// 估计楼主应该是对系统的某个输入数据进行滤波处理，输入数据带有噪声，因此输入数据需要从其他软件构件传递过来。
// 楼主说的死循环是指嵌入式软件main程序里面的“超级大循环”吗？
// 这个大循环在每一个用这种前台/后台处理方式的嵌入式软件都有，应该没有必要在这里写出来。

Problem Description Have you ever played quoit in a playground? Quoit is a game in which flat rings are pitched at some toys, with all the toys encircled awarded. In the field of Cyberground, the position of each toy is fixed, and the ring is carefully designed so it can only encircle one toy at a time. On the other hand, to make the game look more attractive, the ring is designed to have the largest radius. Given a configuration of the field, you are supposed to find the radius of such a ring. Assume that all the toys are points on a plane. A point is encircled by the ring if the distance between the point and the center of the ring is strictly less than the radius of the ring. If two toys are placed at the same point, the radius of the ring is considered to be 0. Input The input consists of several test cases. For each case, the first line contains an integer N (2 <= N <= 100,000), the total number of toys in the field. Then N lines follow, each contains a pair of (x, y) which are the coordinates of a toy. The input is terminated by N = 0. Output For each test case, print in one line the radius of the ring required by the Cyberground manager, accurate up to 2 decimal places. Sample Input 2 0 0 1 1 2 1 1 1 1 3 -1.5 0 0 0 0 1.5 0 Sample Output 0.71 0.00 0.75

Problem Description ACboy was kidnapped!! he miss his mother very much and is very scare now.You can't image how dark the room he was put into is, so poor :(. As a smart ACMer, you want to get ACboy out of the monster's labyrinth.But when you arrive at the gate of the maze, the monste say :" I have heard that you are very clever, but if can't solve my problems, you will die with ACboy." The problems of the monster is shown on the wall: Each problem's first line is a integer N(the number of commands), and a word "FIFO" or "FILO".(you are very happy because you know "FIFO" stands for "First In First Out", and "FILO" means "First In Last Out"). and the following N lines, each line is "IN M" or "OUT", (M represent a integer). and the answer of a problem is a passowrd of a door, so if you want to rescue ACboy, answer the problem carefully! Input The input contains multiple test cases. The first line has one integer,represent the number oftest cases. And the input of each subproblem are described above. Output For each command "OUT", you should output a integer depend on the word is "FIFO" or "FILO", or a word "None" if you don't have any integer. Sample Input 4 4 FIFO IN 1 IN 2 OUT OUT 4 FILO IN 1 IN 2 OUT OUT 5 FIFO IN 1 IN 2 OUT OUT OUT 5 FILO IN 1 IN 2 OUT IN 3 OUT Sample Output 1 2 2 1 1 2 None 2 3

``` #include<malloc.h> #include<stdio.h> #include<stdlib.h> #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2 #define STACK_INIT_SIZE 100 #define STACKINCREMENT 10 #define QueueSize 100 typedef int Status; typedef char ElemType; typedef struct Stack{ ElemType data[STACK_INIT_SIZE]; int top; }SqStack;//静态顺序栈 void TraverseStack(SqStack s) {//对栈进行遍历 while(s.top!=0) { s.top--; printf("s.data[%d]=%c",s.top,s.data[s.top]); } } Status InitStack(SqStack&s) {//栈的初始化 s.top=0; return OK; } Status Push(SqStack&s,ElemType e) {//入栈 if(s.top>=0) return ERROR; s.data[s.top]=e; s.top++; return OK; } Status Pop(SqStack&s,ElemType &e) {//出栈 if(s.top==0) return ERROR; s.top--; e=s.data[s.top]; return OK; } int StackEmpty(SqStack s) {//判断栈是否为空 if(s.top==0) return 1; else return 0; } ElemType GetTop(SqStack s) {//返回栈顶的元素 if(!StackEmpty(s)) return ERROR; ElemType e; s.top--; e=s.data[s.top]; return e; } typedef struct Queue { ElemType *base; int front,rear; }SeqQueue; Status InitQueue(SeqQueue&Q) {//初始化队列 Q.base=(ElemType*)malloc(QueueSize*sizeof(ElemType)); if(!Q.base)exit(OVERFLOW); Q.front=Q.rear=0; return OK; } Status EnQueue(SeqQueue&Q,ElemType e) {//入队 if((Q.rear+1)%QueueSize ==Q.front) { printf("Queue overflow"); return OK; } Q.base[Q.rear]=e; Q.rear=(Q.rear+1)%QueueSize; return OK; } Status DeQueue(SeqQueue&Q,ElemType &e) {//出队 if(Q.front==Q.rear) { printf("Queue empty"); return ERROR; } e=Q.base[Q.front]; Q.front=(Q.front+1%QueueSize); return OK; } ElemType GetHead(SeqQueue Q) {//取队列的第一个元素 if(Q.front==Q.rear) { printf("Queue empty"); return ERROR ; } else return Q.base[Q.front]; } Status QueueTraverse(SeqQueue Q) {//遍历队列 int p; if(Q.front==Q.rear){ printf("Queue empty"); return ERROR ; } p=Q.front; do { printf("%2c",Q.base[p]); p=(p+1)%QueueSize; }while(p!=Q.rear); return OK; } int main() { # SqStack s; SeqQueue q; ElemType ch ,e1,e2; int state; InitStack(s); InitQueue(q); printf("input a string ending by#:"); scanf("%c",&ch); while(ch!='#') { Push(s,ch); EnQueue(q,ch); scanf("%c",&ch); } printf("\n The Stack is:"); TraverseStack(s); printf("\n The Queue is:"); QueueTraverse(q); printf("\n"); state=TRUE; while(!StackEmpty(s)&&state) { if(GetTop(s)==GetHead(q)) { Pop(s,e1); DeQueue(q,e2); } else state=FALSE; } if(state) printf("This string is HuiWen!\n "); else printf("This string is not HuiWen!\n"); return 0; } ``` ![图片说明](https://img-ask.csdn.net/upload/201911/01/1572567807_765024.png) ![图片说明](https://img-ask.csdn.net/upload/201911/01/1572567819_676613.png)
C语言指针内存分配相关问题，求大神指导。。。

Java学习的正确打开方式

Python——画一棵漂亮的樱花树（不同种樱花+玫瑰+圣诞树喔）

shell脚本：备份数据库、代码上线

IntelliJ IDEA 简称 IDEA，被业界公认为最好的 Java 集成开发工具，尤其在智能代码助手、代码自动提示、代码重构、代码版本管理(Git、SVN、Maven)、单元测试、代码分析等方面有着亮眼的发挥。IDEA 产于捷克，开发人员以严谨著称的东欧程序员为主。IDEA 分为社区版和付费版两个版本。 我呢，一直是 Eclipse 的忠实粉丝，差不多十年的老用户了。很早就接触到了 IDEA...

Redis 面试题 1、什么是 Redis?. 2、Redis 的数据类型？ 3、使用 Redis 有哪些好处？ 4、Redis 相比 Memcached 有哪些优势？ 5、Memcache 与 Redis 的区别都有哪些？ 6、Redis 是单进程单线程的？ 7、一个字符串类型的值能存储最大容量是多少？ 8、Redis 的持久化机制是什么？各自的优缺点？ 9、Redis 常见性...

【设计模式】单例模式的八种写法分析

《面试宝典》：检验是否为合格的初中级程序员的面试知识点，你都知道了吗？查漏补缺

【超详细分析】关于三次握手与四次挥手面试官想考我们什么？

2019年Spring Boot面试都问了什么？快看看这22道面试题！
Spring Boot 面试题 1、什么是 Spring Boot？ 2、Spring Boot 有哪些优点？ 3、什么是 JavaConfig？ 4、如何重新加载 Spring Boot 上的更改，而无需重新启动服务器？ 5、Spring Boot 中的监视器是什么？ 6、如何在 Spring Boot 中禁用 Actuator 端点安全性？ 7、如何在自定义端口上运行 Sprin...

JavaScript 中， 5 种增加代码可读性的最佳实践

【图解算法面试】记一次面试：说说游戏中的敏感词过滤是如何实现的？

GitHub 标星 1.6w+，我发现了一个宝藏项目，作为编程新手有福了！

Java知识体系最强总结(2020版)

Windows可谓是大多数人的生产力工具，集娱乐办公于一体，虽然在程序员这个群体中都说苹果是信仰，但是大部分不都是从Windows过来的，而且现在依然有很多的程序员用Windows。 所以，今天我就把我私藏的Windows必装的软件分享给大家，如果有一个你没有用过甚至没有听过，那你就赚了????，这可都是提升你幸福感的高效率生产力工具哦！ 走起！???? NO、1 ScreenToGif 屏幕，摄像头和白板...

Fiddler+夜神模拟器进行APP抓包
Java9到Java13各版本新特性代码全部详解(全网独家原创)
Java现在已经发展到了Java13了（正式版本），相信很多朋友还对各个版本还不是很熟悉，这里面专门把Java9到Java13各个版本的一些新特性做了一些详细讲解。我在网上也找了很多，但基本都是官方文档的CV，没有任何代码演示，而且官方的示例代码也不是很好找得到，官方API目前还是Java10，官方文档真是坑啊。所以我在这里专门写了一篇文章，主要针对平时开发与有关的功能Java9到Java13各...

Java程序员2020年最新进入 BATJ华为等大厂必读书单及技能
0 要做一名高级点儿的代码民工,我们首先要有如下各项技能 ! Google more and Baidu less! Stackoverflow First! Stack Overflow - Where Developers Learn, Share, &amp; Build Careers​stackoverflow.com 汇聚最多编程问题且有世界各路大佬解答 尝试着阅读官方原版...

CPU对每个程序员来说，是个既熟悉又陌生的东西？ 如果你只知道CPU是中央处理器的话，那可能对你并没有什么用，那么作为程序员的我们，必须要搞懂的就是CPU这家伙是如何运行的，尤其要搞懂它里面的寄存器是怎么一回事，因为这将让你从底层明白程序的运行机制。 随我一起，来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说，我们首先就要搞明白它是怎么回事，也就是它的内部构造，当然，CPU那么牛的一个东...

Python实战：抓肺炎疫情实时数据，画2019-nCoV疫情地图

[HTML] HTML常用基础标签

B 站上有哪些很好的学习资源?