既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
045 | while (low<=high){ |
046 | m=(low+high)/2; //折半 |
047 | if (L[0]<L[m]) |
048 | high=m-1; |
049 | else |
050 | low=m+1; |
051 | } |
052 | for (j=i-1;L[0]<L[j];--j) |
053 | L[j+1]=L[j]; //记录后移 |
054 | L[high+1]=L[0]; //插入 |
055 | } |
056 | } |
057 | void bubbleSort( int L[11]) //冒泡排序复杂度是O(n^2) |
058 | { |
059 | int i=0,j=0; |
060 | for (i=1;i<=10;++i) |
061 | { |
062 | for (j=1;j<=10-i;++j) |
063 | { |
064 | if (L[j]>L[j+1]) |
065 | { |
066 | L[0]=L[j]; |
067 | L[j]=L[j+1]; //用辅助空间交换两个值 |
068 | L[j+1]=L[0]; |
069 | } |
070 | } |
071 | } |
072 | } |
073 | void selectSort( int L[11]) //选择排序 复杂度为:O(n^2) |
074 | { |
075 | int i=0,j=0,min_idx=0; |
076 | for (i=1;i<=10;++i) |
077 | { |
078 | min_idx=i; |
079 | for (j=i+1;j<=10;++j) |
080 | { |
081 | if (L[j]<L[min_idx]) |
082 | { |
083 | min_idx=j; |
084 | } |
085 | } |
086 | if (min_idx!=i) |
087 | { |
088 | L[0]=L[i]; |
089 | L[i]=L[min_idx]; //交换最小值与L[i] |
090 | L[min_idx]=L[0]; |
091 | } |
092 | } |
093 | } |
094 | void heapSort( int L[11], int n) //堆排序 |
095 | { |
096 | int i=0; |
097 | for (i=n/2;i>0;--i) |
098 | heapAjust(L,i,n); |
099 | for (i=n;i>1;--i) |
100 | { |
101 | L[0]=L[1]; |
102 | L[1]=L[i]; |
103 | L[i]=L[0]; |
104 | heapAjust(L,1,i-1); |
105 | } |
106 | } |
107 | void heapAjust( int L[11], int s, int m) //建大顶堆,使L[s...m]为大顶堆 |
108 | { |
109 | int rc=L[s],i=0; |
110 | for (i=2*s;i<=m;i*=2) |
111 | { |
112 | if (i<m&&L[i]<L[i+1]) |
113 | ++i; |
114 | if (rc>=L[i]) |
115 | break ; |
116 | L[s]=L[i]; |
117 | s=i; |
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
/table>
[外链图片转存中…(img-mW2QvcID-1715740400807)]
[外链图片转存中…(img-907GdVJD-1715740400807)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上C C++开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新