摘要: /*题目: * 在一个已经排序的Int数组中, * 查找某个number,如果存在这个number, * 返回在数组的位置,反之返回-1*/ #include<stdio.h>#define N 100int search(int *a,int right,int lift,int n){ int 阅读全文
posted @ 2016-07-17 21:11 长弓391 阅读(282) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>int data[9][9]={ {0,4,0,7,0,0,0,0,0}, {9,2,0,0,0,0,6,0,7}, {8,3,0,0,0,5,4,0,0}, {0,1,0,0,0,3,0,0,0}, {0,0,0,2,0,1,0,0,0}, {0,0,0,5,0, 阅读全文
posted @ 2016-07-12 19:43 长弓391 阅读(454) 评论(0) 推荐(0) 编辑
摘要: 使用分治法的两路合并排序算法: 将待排序的元素序列一分为二,得到长度基本相等的两个子序列,分别排序。 如果子序列较长,还可继续细分,直到子序列的长度不超过1为止。 当分解所得的子序列已排列有序时,将两个有序子序列合并成一个有序子序列,得到原问题的解。 合并方法: 比较两序列中的最小值,输出其中较小者 阅读全文
posted @ 2016-07-11 10:50 长弓391 阅读(4489) 评论(0) 推荐(0) 编辑
摘要: /* 快速排序由C. A. R.Hoare在1962年提出,是对冒泡排序的一种改进。 * 它的基本思想是: * 通过一趟排序将要排序的数据分割成独立的两部分 * ,其中一部分的所有数据都比另外一部分的所有数据都要小 * ,然后再按此方法对这两部分数据分别进*/ #include<stdio.h>#d 阅读全文
posted @ 2016-07-08 20:39 长弓391 阅读(253) 评论(0) 推荐(0) 编辑
摘要: #include<stdio.h>#define N 1000int main(){ int a[N]={0},i,j,n,t; printf("please input the length of the list:\n"); scanf("%d",&n); printf("please inpu 阅读全文
posted @ 2016-07-08 15:58 长弓391 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 问题描述: /*约瑟夫入狱,监狱内共有33个犯人。 * 某日x名犯人围成一圈,从第m个犯人开始报数, * 报到数字y的犯人出列,被枪毙,下一名犯人重新从1开始报数。 * 依次类推,直至剩下最后1名犯人可被赦免。 * 聪明的约瑟夫在心里稍加计算,算出了最后枪毙的位置, * 他站在这个位置,最终避免了自 阅读全文
posted @ 2016-07-08 15:30 长弓391 阅读(173) 评论(0) 推荐(0) 编辑