摘要:
来源:http://www.cnblogs.com/ider/archive/2012/04/01/binary_search.html在学习算法的过程中,我们除了要了解某个算法的基本原理、实现方式,更重要的一个环节是利用big-O理论来分析算法的复杂度。在时间复杂度和空间复杂度之间,我们又会更注重时间复杂度。时间复杂度按优劣排差不多集中在:O(1), O(log n), O(n), O(n log n), O(n2), O(nk), O(2n)到目前位置,似乎我学到的算法中,时间复杂度是O(log n),好像就数二分查找法,其他的诸如排序算法都是 O(n log n)或者O(n2)。但是也正
阅读全文
posted @ 2013-09-10 22:03
猿人谷
阅读(1182)
推荐(0)
编辑
摘要:
主要包括全排列和回溯两类,其中全排列可以递归与非递归,回溯也可以递归与非递归。于是加一起有4种解法。#include #include using namespace std;template struct ArraySizeHelper {char _[N];};template ArraySizeHelper makeArraySizeHelper(T(&)[N]);#define ARRAY_SIZE(a) sizeof(makeArraySizeHelper(a))bool valid_permutation(const int *queen, int len){ bool .
阅读全文
posted @ 2013-09-10 15:48
猿人谷
阅读(398)
推荐(0)
编辑