摘要:
有一些非负数组成的三角形,第一行只有一个数,除了最下行之外每个数左下方和右下方各有一个数如下 1 3 2 4 10 1 4 3 2 20从第一行的数开始。... 阅读全文
摘要:
#includeusing namespace std;int FindX(int*list, int left, int right, int X);int main(){ int a[12] = { 1, 2, 5, 7, 12, 34, 35, 46, 57, 58, 67, 78 }; co... 阅读全文
摘要:
利用快速排序的思想·去做#includeusing namespace std;int FindKthMax(int*list, int left, int right, int k);int main(){ int i,n,k; while (cin >> n){ int *a = new in... 阅读全文
摘要:
//快速排序,第一步确定一个关键值key(一般设置为第一个元素),一次快排基本思路是将比key小的数放在key的左边将比key大的数放在key右边,于是完成一次快排接下来对key左边和右边分别递归采用同样方法算法步骤: 1.选择一个基准key(一般选第一个元素) 2设定两个指针low和high,初始... 阅读全文
摘要:
将数组a[i:j]一分为二,找出前半部分最大值,找出后半部分最大值,总合结果#includeusing namespace std;void findMax(int a[], int i, int j, int &max);int main(){ int a[100]; int n, i; whil... 阅读全文
摘要:
对n个元素进行全排,可以归结到他的下一级: 1,拿出第1个元素放在最全面,将后面的n-1个元素全排,然后将第1个元素归到开始位置 2.拿出第2个元素放在最全面,将后面的n-1个元素全排,然后将第2个元素归到开始位置………………………… n,拿出第n个元素放在最全面,将后面的n-1个元素全排,然... 阅读全文
摘要:
问题实现:当n==1时候只需将盘从A移到C即可,那摩当规模为n时候,可以转化为规模为n-1的情况 1,借助C,将n-1个圆盘从A移到B 2,将第n个盘从A移动到C 3,借助A,将n-1个盘从B移动到C/*下面代码的时间复杂度为O(2^n)*///hannoi.cpp//-------... 阅读全文
摘要:
递归是一种函数或方法中调用自身的编程技术,递归思想在于把大问题分解为小问题,进一步分解为更小的问题,直到每个小问题可以解决为止,也就是说,递归就是用与自己相似但规模较小的问题来描述自己。 递归算法的三个特性: 1,求解规模为n的问题可以转化为一个或多个结构相同规模较小的的问题,然后从这... 阅读全文
摘要:
#include#include#includeusing namespace std;class poly{public: double c; int e; poly*next;};poly*input();double f(poly*head,double x);double root(poly... 阅读全文
摘要:
#includeusing namespace std;#define Maxsize 100class Date{public: int date[Maxsize + 1]; /*存储时按照1到n下标存储,空出下标为0的位置*/};int mindsearch(Date&A, int k, int... 阅读全文