分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
题目
解决代码及点评
- <code class="language-cpp">/*
- 归并排序
- */
- #include <iostream>
- using namespace std;
- const int N=10;
- int anthor[N];
- void MergeSort(int *array,int begin,int end)
- {
- if(end-begin>1)
- {
- //
- MergeSort(array,begin,(begin+end)/2);
- MergeSort(array,(begin+end)/2+1,end);
- int i=begin;
- int j=(begin+end)/2+1;
- int k=begin;
- while (i<=(begin+end)/2&&j<=end)//合并时,把一个串全部并入另一个串放在一个新串,剩下的直接放在尾部
- {
- if(array[i]>array[j]) //小的值进入,并将索引后移
- anthor[k++]=array[j++];
- if(array[i]<array[j])
- anthor[k++]=array[i++];
- }
- while (i<=(begin+end)/2)
- {
- anthor[k++]=array[i++];
- }
- while(j<=end)
- {
- anthor[k++]=array[j++];
- }
- for(k=begin;k<=end;k++) //排序好重新拷贝回数组
- array[k]=anthor[k];
- }
- else //相邻则直接交换
- {
- if(array[end]<array[begin])
- {
- int temp=array[end];
- array[end]=array[begin];
- array[begin]=temp;
- }
- }
- }
- int main()
- {
- int array[N];
- for(int i=0;i<10;i++)
- {
- array[i]=rand()%100;
- cout<<array[i]<<" ";
- }
- MergeSort(array,0,N-1);
- cout<<endl;
- for(int i=0;i<10;i++)
- {
- cout<<array[i]<<" ";
- }
- system("pause");
- return 0;
- }
- </code>
/* 归并排序*/#include <iostream>using namespace std;const int N=10;int anthor[N];void MergeSort(int *array,int begin,int end){ if(end-begin>1) { // MergeSort(array,begin,(begin+end)/2); MergeSort(array,(begin+end)/2+1,end); int i=begin; int j=(begin+end)/2+1; int k=begin; while (i<=(begin+end)/2&&j<=end)//合并时,把一个串全部并入另一个串放在一个新串,剩下的直接放在尾部 { if(array[i]>array[j]) //小的值进入,并将索引后移 anthor[k++]=array[j++]; if(array[i]<array[j]) anthor[k++]=array[i++]; } while (i<=(begin+end)/2) { anthor[k++]=array[i++]; } while(j<=end) { anthor[k++]=array[j++]; } for(k=begin;k<=end;k++) //排序好重新拷贝回数组 array[k]=anthor[k]; } else //相邻则直接交换 { if(array[end]<array[begin]) { int temp=array[end]; array[end]=array[begin]; array[begin]=temp; } }}int main(){ int array[N]; for(int i=0;i<10;i++) { array[i]=rand()%100; cout<<array[i]<<" "; } MergeSort(array,0,N-1); cout<<endl; for(int i=0;i<10;i++) { cout<<array[i]<<" "; } system("pause"); return 0;}
代码下载及其运行
代码下载地址:http://download.csdn.net/detail/yincheng01/6704519
解压密码:c.itcast.cn
下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:
扫描二维码关注公众号,回复:
4042215 查看本文章
1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”
2)在下拉框中选择相应项目,项目名和博客编号一致
3)点击“本地Windows调试器”运行
程序运行结果