




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、算法分析与设计西南交通大学算法设计与分析指导教师:尹治本学院:信息科学与技术学院班级:软件一班姓名:*学号:*2013年11月作业一、8-皇后问题1、实验代码:#include stdio.hint count;int queen10, column20, left20, right20;void prt1()int j;printf(No.%d , +count);for (j = 1; j = 8; j+) printf(%3d, queenj);printf(n);void meun(int i)int j;for (j = 1; j = 8; j+)if (columnj & left
2、i - j + 8 & righti + j)queeni = j; columnj = 0;lefti - j + 8 = 0; righti + j = 0;if (i8) meun(i + 1);else prt1();columnj = lefti - j + 8 = righti + j = 1;void main()int i;for (i = 1; i = 16; i+)columni = lefti = righti = 1;count = 0; meun(1); 2、实验结果 作业二:Quicksort 快速排序算法1、 实验代码:#include#includeusing
3、namespace std;int Partition(int arry,int start,int end) int pivot=arrystart; while(startpivot&startend) end-; arrystart=arryend; while(arrystartpivot&startend) start+; arryend=arrystart; arrystart=pivot; return start;void QSort(int arry,int start,int end) if(startend) int pivotkey=Partition(arry,sta
4、rt,end); QSort(arry,start,pivotkey-1); QSort(arry,pivotkey+1,end); void QuickSort(int arry,int len) QSort(arry,0,len);void main() int arry10; cout输入10个数:endl; for(int i=0;iarryi; coutendl; QuickSort(arry,10); cout排序后:endl; for(int i=0;i10;i+) coutarryi ; coutendl; 2、 实验结果作业三、Heapsort 堆排序算法1、 实验代码:#i
5、nclude #include #define N 10 using namespace std; void BuildMaxHeap(int * array); void HeapSort(int * array); void MaxHeapify(int * array,int n); int HeapSize; int main() int arrayN; cout请输入10个数:; for(int i=0 ; iarrayi; coutendl排序后:endl; HeapSort(array); for(int k=0;kN;k+) coutarrayk ; cout=0 ; i-)
6、int temp = array0; array0 = arrayi; arrayi = temp; HeapSize -= 1; MaxHeapify(array,1); void BuildMaxHeap(int * array) HeapSize = N; for(int i = N/2 ; i=1 ; i-) MaxHeapify(array,i); void MaxHeapify(int * array,int temp) int largest; int l = 2*temp ; int r = 2*temp+1; if(l arraytemp-1) largest = l; el
7、se largest = temp; if(r arraylargest-1) largest = r; if(largest != temp) int t = arraytemp-1; arraytemp-1 = arraylargest-1; arraylargest-1 = t; MaxHeapify(array,largest); 2、 实验结果 作业四:Quicksort like(类似于快速排序的选择算法)找中位数1、 实验代码#include #include #include #include using namespace std;int array = 89,98,45,2
8、6,15,35,48,86,92,65,45;const int size = sizeof array / sizeof *array;int partition(int *array, int left, int right)if (array = NULL)return -1;int pos = right;right-;while (left = right)while (left pos & arrayleft = 0 & arrayright arraypos)right-;if (left = right)break;swap(arrayleft, arrayright);swa
9、p(arrayleft, arraypos);return left;int getMidIndex(int *array, int size)if (array = NULL | size 1;int index = -1;while (index != midPos)index = partition(array, left, right);if (index midPos)right = index - 1; elsebreak;assert(index = midPos);return arrayindex;int main() cout数组元素为:endl; for(int i=0;
10、i9;i+) coutarrayi ; int value = getMidIndex(array, size); coutendlendl; cout 中位数是: value endl; return 0; 2、实验结果作业五:Radixsort基数排序算法1、 实验代码:#include #include #define MAXK 10 int get_int(void); int count_sort (int*array,int n,int d); int get_value(int a,int d); void radix_sort(int* a,int n,int d); int
11、main() int n = 12; int p12 = 1234,3123,2539,5958,4365,3352,6654,7214,7684,9351,4685,3325; radix_sort(p,n,3); for (int i=0;in;i+) printf(%d ,pi); printf(n); return 0; void radix_sort(int* a,int n,int d) for (int i=0;i=d;i+) printf(第%i次n,i+1); count_sort(a,n,i); int count_sort (int *array, int n,int d
12、) int kMAXK = 0; int * temp,*b; int i; temp = (int *) malloc (sizeof (int)*n); b = (int *) malloc (sizeof (int)*n); if (NULL = temp) return 0 ; for (i=0;in;i+) bi = get_value(arrayi,d); for (i=0;in;i+) printf(%d ,bi); printf(n); for (i = 0; i n; i+) kbi+; for (i=0;i10;i+) printf(%d ,ki); printf(n); for (i=1;i=0;i-) temp-kbi=arrayi; for (i=0;in;i+) printf(%d ,tempi); printf(n); for (i = 0; i 0&a0;d-) b/=MAXK; return b%MAXK; int get_int(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CACEM 15.2-01-2020城市公共交通运营服务第1部分:基本要求
- 运动头盔内部结构对安全性能的影响考核试卷
- 如何选择适合的嵌入式开发平台试题及答案
- 公路建设项目的生命周期管理试题及答案
- 药用纯化水设备与系统设计考核试卷
- 行政组织理论变革的动态分析及2025年试题及答案
- 航空员工培训与发展考核试卷
- 油砂资源综合利用考核试卷
- 应对突发情况的公路工程试题及答案
- 数据库技术文档的重要性试题及答案
- 2023年《畜牧兽医综合知识复习题及答案》
- 八年级语文下册(部编版) 第四单元 经典演讲-单元主题阅读训练(含解析)
- 2024新高考英语1卷试题及答案(含听力原文)
- 2023-2024学年译林版四年级英语下册Unit8《How are you?》单元检测卷(含听力及答案)
- DL/T 5352-2018 高压配电装置设计规范
- 养老院食物中毒应急预案
- 国家开放大学《消费者行为学》形考任务实训(六选一)参考答案
- AQ∕T 7009-2013 机械制造企业安全生产标准化规范
- JTG-C30-2002公路工程水文勘测设计规范-PDF解密
- 2024年广东广州越秀区小升初考试语文试卷含答案
- 慢性病照护智慧树知到期末考试答案2024年
评论
0/150
提交评论