今天开始学习《算法设计分析与实现从入门到精通(C\C++和Java)》。
我又开了个大坑。。。想起来我以前挖的C++ Primer的坑还没填完呢。。。
《算法设计分析与实现从入门到精通(C\C++和Java)》是本算法书(这不废话吗), 我随手从图书馆借过来的,貌似没什么人气,至少没刘汝佳的白书和黑书那么出名,因为我都看不太懂所以觉得好像不错,于是看了起来,顺便做一下学习笔记,呵呵。。。
因为书皮是红色的,我就可耻地把它称作红书吧。。。
希望这个坑能填完。。。
第一章讲渐增型算法,一开始就是插入排序,感觉有点深奥,一开始蒟蒻一只都没思路,一头雾水。。。
蒟蒻只能看着伪代码依葫芦画瓢敲了一遍。。。
#include<stdio.h> void insert_sort(int num[], int n); int main() { int num[1000], n = 0; for (int i = 0; scanf("%d", &num[i]) != EOF; i++) n++; insert_sort(num, n); for (int i = 0; i < n; i++) printf("%d", num[i]); printf("\n"); } void insert_sort(int *num, int n) { int key, i, j; for (j = 2; j < n; j++) { key = num[j]; i = j - 1; while (i >= 0 && num[i] > key) { num[i + 1] = num[i]; i--; } num[i + 1] = key; } }
。。。
苣蒻一整晚上就搞这点。。。本来还想搞个随机数发生器来测试数度来着的,看了白书又在网上查了老久,好不容易才搞懂。
另外据说用脚本会更方便,于是有研究了会。。。
根据前辈的教诲,Health
first.时间晚了,所以我今天就到这,这坑过几天再挖。。。