配合C++的Algorithm基础
来源:互联网 发布:网络故障诊断1一1 编辑:程序博客网 时间:2024/06/06 02:52
C++基础知识
#include<stdio.h>#include<iostream>int main(int argc, char *argv[]){ int size = 10; for (int i = 0; i < size; i++) { printf("i = %d \n", i); } system("pause"); return 0;}
如果想用
system("pause");
需要头文件#include<iostream>
for (int i = 0; i < size; i++)
这个for只是想告诉自己,i = 0 后的 i++第一次不起效果,第一次输出的还是 i= 0(int argc, char *argv[])
argc 的意思是
*argv 的意思是
Insertion Sort
/* c program for insert sort */#include<stdlib.h>#include<stdio.h>#include<iostream>using namespace std;void SwapTwo(int &a, int &b){ int temp = a; a = b; b = temp;}void InsertSort(int arr[], int size) { for (int i = 1; i < size; i++) { int inserter = arr[i]; int index = i - 1; while (index >= 0 && inserter < arr[index]) { /* i = 10 index = 9 , inserter = arr[10] arr[9]>inserter的话 arr[10] 变成9号,相当于后移了一位 inserter 还是原来10号的数字不变 arr[9] 不变 i = 9 index = 8 , inserter = arr[10]原来的数字,但现在arr[10]位置上现在是9号 arr[8]>inserter的话 arr[9] 变成8号 inserter 还是原来10号的数字不变 arr[8] 不变 如果arr[8]>inserter不成立 arr[9] = inserter */ arr[index + 1] = arr[index]; index--; } arr[index + 1] = inserter; }}int main(){ int nums[] = { 5,3,7,2,1,9,14,8,7,4,30,18,1,23,27 }; int size = sizeof(nums) / sizeof(int); InsertSort(nums, size); for (int i = 0; i < size; i++) { cout << nums[i] << " "; } cout << endl; system("pause"); return 0;}
void InsertSort(int arr[], int size) { int j, temp; for (int i = 0; i < size; i++) { j = i; while (j > 0 && arr[j] < arr[j - 1]) { temp = arr[j]; arr[j] = arr[j - 1]; arr[j - 1] = temp; j--; } }}
- 和上面一个算法的区别是,上面并没有换位,而是把插入的数字保留在了inserter里面,而后者在插入值大于原来的最末值时,直接换了过来。然后缩小index,或者说,j值,继续比较替换后数字
Merge Sort
阅读全文
0 0
- 配合C++的Algorithm基础
- 关于git配合tortoiseGit的基础使用
- 配合 GitHub -- Git 的基础使用
- 关于git配合tortoiseGit的基础使用
- 关于git配合tortoiseGit的基础使用
- 关于git配合tortoiseGit的基础使用
- 关于git配合tortoiseGit的基础使用
- 关于git配合tortoiseGit的基础使用
- C语言基础 switch与enum类型配合使用
- .h文件与C文件的配合
- C++/C++11中<algorithm>的使用
- C++基础3:algorithm库的基础用法
- <c:choose>与<c:when>的一定要配合使用
- 关于基础和软硬件配合的简单思考
- 【Algorithm】基础算法学习
- 汇编与C配合
- 开发与面试涉及的基础数据结构和算法-Algorithm
- 配合Dijkstra算法的Hash表头文件C语言
- 网易云JAVA入门编程题7-1
- RedHat Enterprise 6.5安装Oracle 12.2.0.1
- navicat连接腾讯云MySQL
- ACM_08
- App调用系统Camera拍照或者从Gallery选取图片,返回时先显示手机Launcher或者前一个界面,再跳转到当前activity
- 配合C++的Algorithm基础
- QT重写控件函数并添加鼠标单击事件
- 网易云JAVA入门编程题6-1
- 死锁
- 蘑菇街2016招聘笔试
- POJ1703 解题报告
- C#程序运行不了CLR20R3解决方法
- Java IO流——字符流读写操作
- Javascript遍历map集合以及map对象