数据结构算法
137??
这个作者很懒,什么都没留下…
展开
-
冒泡,选择,插入排序
/冒泡/include using namespace std; int main() {int a[10] = { 1, 5, 3, 2, 4, 7, 9, 6, 8, 0 };int temp = 0 , i =0 , j = 0;for (i = 0; i < 10; i++) for (j = 0; j < 9-i ; j++)//注意9-i是对...原创 2018-01-29 23:48:28 · 147 阅读 · 0 评论 -
求未知长度链表的中间结点---快慢指针
优点:普通方法需将链表完全遍历,使用快慢指针将时间缩短了一半 版本一:问题所在—-一旦链表的节点是偶数循环错误include using namespace std;struct node{ int value; struct node * next; }; typedef struct node* Node;bool initNode(Node *h原创 2018-02-02 21:56:02 · 164 阅读 · 0 评论 -
约瑟夫问题---单向循环链表
include using namespace std;define N 41define M 3struct node{ int value; struct node * next; }; typedef struct node* Node;bool initNode(Node *head); bool insert_tail(Node head, int value);原创 2018-02-02 22:52:02 · 219 阅读 · 0 评论 -
约瑟夫问题---数组实现
include using namespace std;define N 41define M 3int main() { int a[100] = { 0 }; for (int i = 1; i <= N; i++) { a[i] = i; } int remain = N; int count = 0; //计数器原创 2018-02-03 22:55:49 · 171 阅读 · 0 评论 -
对于递归的深入理解
这篇文章大概对于小伙伴们理解递归有启发性的帮助递归核心:“递”是问题的描述,“归”才是问题的解决的本质。问题解决的时机也要根据具体情况分析,可以在“递”的过程中,也可以在“递”的终点,也可以在“归的途中”,甚至可以没有归(如果问题在终点已经解决,就没有必要“归”)递归的形式:“递”+“结束条件”+“归”递归真是个奇妙的思维方式。对一些简单的递归问题,我总是惊叹于递归描述问题和编写代码的简洁。但是总...转载 2018-03-20 10:36:47 · 541 阅读 · 0 评论