数据结构
文章平均质量分 74
sweetna
这个作者很懒,什么都没留下…
展开
-
快速排序QuickSort
#include using namespace std;//......................获取支点索引..............................//int KeyPivot(int List[], int i,int j){ int x = List[i];//x中始终存放支点的值,首先支点KeyPivot在数组的第一个元素i位置 while (i { w原创 2008-09-06 19:39:00 · 434 阅读 · 0 评论 -
冒泡排序(重者下沉)
#include using namespace std;//..............方法1:冒泡排序(自上而下扫描,“重者沉”).........................//void BubbleSort(int *list,int n){ int i; int j; int x; int flag; for (i=0;i { flag = 0; for (j=0;j原创 2008-09-06 19:31:00 · 1318 阅读 · 0 评论 -
直接插入排序
#includeusing namespace std;#define NUM 10void DirectInsert(int *list,int n){ int i; int j; int x; for (i=1;i { x = list[i]; for (j=i-1;j>=0;j--) { if (list[j]>x) { list[j+1] = list[j];原创 2008-09-08 09:21:00 · 439 阅读 · 0 评论 -
shell希尔排序
#include using namespace std;#define NUM 10void ShellSort(int r[],int n){ int d = n; int d1; int i; int j; int x; while (d>=1) { d1 = d/2; d = d1; for (i=d1;i { x = r[i]; for (j=i-d1;j>原创 2008-09-12 16:57:00 · 473 阅读 · 0 评论 -
折半插入排序
#include #include using namespace std;#define NUM 10void HalfInsertSort(int list[],int n){ int low; int high; int mid; int x; int i; int j; for (i=1;i { x = list[i]; low = 0; high = i-1; whi原创 2008-09-15 21:13:00 · 496 阅读 · 0 评论 -
线性表
线性表 目录(*) 数组的排序复杂度O(n*n)的有selection sortbubble sortrank sort下面对这三种算法进行讲解:selection sort思路:首先找出最大的元素,把它移动到最后(即a[n-1]的位置上),然后在余下的n-1个元素中找出最大的,移动到a[n-2],如此进行下去直到只剩下一个元素。template class T>void Se转载 2008-10-03 10:32:00 · 684 阅读 · 0 评论 -
单链表
//...........C建立单链表#include#include#includeusing namespace std;typedef struct student{ int data; struct student *next;}Node;Node *Creat(){ Node *head,*p,*s; int x,cycle = 1; head = (Node*) malloc(si原创 2008-10-06 10:19:00 · 898 阅读 · 0 评论