数据结构
EmSoftEn
这个作者很懒,什么都没留下…
展开
-
排序算法
排序:将一连串记录按照关键字的大小(从大到小或从小到大)进行排列。 稳定性:如果两个大小相同的关键字的相对位置在排序前和排序后是一样的(Ai等于Aj,排序前Ai 在Aj的前面,排序后Ai 还是在Aj的前面),那么这种算法就是稳定的。 稳定的排序算法有:冒泡排序、直接插入排序、归并排序、基数排序 不稳定的排序算法有:选择排序、快速排序、希尔排序、堆排序 冒泡排序:原创 2015-08-17 10:53:01 · 872 阅读 · 0 评论 -
链表的笔试题
单向链表节点定义: typedef struct node { int data; struct node *next; }Node,*pNode;双向链表节点定义: typedef struct node { int data; struct node *next; struct node *pre; }Node,*pNode; 已知链表的头结点he原创 2016-01-04 19:58:40 · 653 阅读 · 0 评论 -
用c语言实现队列(FIFO)
循环队列是通过数组实现的一种队列 #include #define QUEUESIZE 100 //定义数组大小 typedef int DataType; //定义数组元素类型 typedef struct { int count; //当前队列中元素的个数 int front; //队列中第一个元素的索引 int tail; //队列中最后一个元素的下一个位置的索引 }C原创 2016-08-05 15:17:52 · 14502 阅读 · 2 评论 -
用c语言实现栈
栈是一种后进先出的数据结构,栈有两种存储结构:顺序存储和链式存储 栈的顺序存储结构简称为顺序栈 顺序栈的c语言实现: #define STACKSIZE 100 typedef int DataType; typedef struct { DataType data[STACKSIZE]; int top; //指向栈顶,为-1时,栈中没有元素 }SeqStack; bool I原创 2016-08-08 17:02:56 · 928 阅读 · 0 评论 -
二叉树的遍历
二叉树的遍历分为前序遍历、中序遍历、后序遍历 遍历的C语言实现: typedef char DataType; typedef struct node { DataType data; struct node *lchild; struct node *rchild; }BiTNode, *pBiTNode; void PreOrderTraverse(pBiTNode pB原创 2016-08-08 18:00:59 · 570 阅读 · 0 评论 -
查找算法
在有序表上进行折半查找 int BinarySearch(DataType data[], DataType kx, int n) { int mid; int low = 1; //从数组的索引1开始存放元素 int high = n; while(low <= high) { mid = (low + high) / 2; if (kx == data[mid])原创 2016-08-08 18:10:00 · 550 阅读 · 0 评论