算法
yandongrong
这个作者很懒,什么都没留下…
展开
-
数组排序
数组排序函数: void sort(int data[],int len) 其中data为需要排序的数组,len为该数组的大小。 错误方法:void sort(int data[],int len){ int i = 0; int temp = 0; for(i = 0;i < len;i++) { if(data[i] > data[i+1])原创 2013-04-14 16:32:45 · 328 阅读 · 0 评论 -
约瑟夫环问题——数组实现
原题: 输入一个由随机数组成的数列(数列中每个数均是大于0的整数,长度已知),和初始计数值m。从数列首位置开始计数,计数到m后,将数列该位置数值替换计数值m,并将数列该位置数值出列,然后从下一位置从新开始计数,直到数列所有数值出列为止。如果计数到达数列尾段,则返回数列首位置继续计数。请编程实现上述计数过程,同时输出数值出列的顺序。 问题分解为:1.找到那个要删原创 2013-04-14 21:35:37 · 502 阅读 · 0 评论 -
最简单的二分查找法
#includeint bsearch(int a[],int b,int len){ int low = 0; int high = len - 1; //low and high int mid = 0; while(high > low) { mid = (low + high)/2; if(b < a[mid]) { high =原创 2013-09-12 17:37:20 · 353 阅读 · 0 评论 -
一些基本排序(快速排序、shell排序)的简单实现
快速排序是应用了分治的思想:#include #include using namespace::std; int Partition( int A[], int p, int q ) //将其分治{ int key = A[p]; int i = p; for(int j = p + 1 ;j < q; j++ )原创 2013-09-12 16:35:25 · 379 阅读 · 0 评论