看书、思考、写代码!
/*******************************************
* copyright@hustyangju
* blog: http://blog.csdn.net/hustyangju
* 2014-11-04
* 题目:并归排序
* 描述:中分法递归分解一个区间的数组,再合并子区间,在合并时完成排序
* 解题思路:递归法,利用临界...
分类:
编程语言 时间:
2014-11-04 22:45:13
阅读次数:
211
?比较著名的算法有 冒泡法,贪?心算法,递归法,迭代法,分治法,动态规划法,分?支限界 法,回溯法,A*寻路算法 等等。? ps:记录下,日后多多练习这些算法。
分类:
编程语言 时间:
2014-11-03 06:49:37
阅读次数:
208
1 /** 回调参数递归法 (注: php默认是值传递,java基本类型以及String是值传递,其它转载类型一般为引用传递) 2 * @param $arr 传入的多维数组 3 * @param array $reArr 返回的一维数组 4 */ 5 pu...
分类:
其他好文 时间:
2014-09-24 13:45:06
阅读次数:
183
string类提供了判断字符串B在字符串A中首次(或最后)出现的Index的方法,但有时候需要判断B在A中出现了多少次。为此想了一个算法。1 public static void CountIndexOf1(string A, string B,int startindex,ref int co.....
分类:
其他好文 时间:
2014-09-10 23:39:51
阅读次数:
265
问题描述:定义Fibonacci数列的定义如下:/ 0 n=0f(n)=1 n=1\ f(n-1)+f(n-2)n=2给定n,求Fibonacci数列的第n项。分析:1 递归法 1 // 19_1.cc 2 #include 3 using namespace std; 4 5 size_t f.....
分类:
其他好文 时间:
2014-08-11 17:12:42
阅读次数:
172
题目:输入n个整数,找出其中最小的k个数。
《剑指offer》给出了两种实现算法:
算法1:采用Partition加递归法,该算法可以说是快速排序和二分查找的有机结合。算法的时间复杂度为O(n),缺点在于在修改Partition的过程中会修改原数组的值。
算法2:采用top-k算法。如果要找最小的K个数,我们才用一个含有K个值的大顶堆;如果要找最大的K个数,我们采用小顶堆。该算法的时间复杂度为O(nlogK),是一种比较好的算法,启发于堆排序。...
分类:
其他好文 时间:
2014-08-06 23:04:12
阅读次数:
333
一、概念:(Recursion)在数学与计算机科学中,是指在函数定义中使函数自身的方法。 定义: 在数学和计算器及科学中,递归是指由一种(或多种)简单的基本情况定义的一类对象或方法,并规定其它所有情况都能被还原为其基本情况。http://zh.wikipedia.org/zh/%E9%80%92.....
分类:
其他好文 时间:
2014-07-30 11:50:53
阅读次数:
201
本题要求输出全部拓扑排序的序列。
还好本题的数据量不是很大,限制在26个大写英文字母,故此可以使用递归法输出。
这个递归输出全部解在Leetcode很多这样的题目的,不小心的话,还是很难调试的。
总体考了递归和拓扑排序,还有判断是否可以拓扑排序-就是是否图有环。
考了三大知识点,难度还是有的。因为数据量不大,故此判断环可以使用一般递归方法,递归只需要注意细节就好了。
#incl...
分类:
其他好文 时间:
2014-07-08 15:35:30
阅读次数:
141
问题:给出一个字符串,输出所有可能的排列。全排列有多种算法,此处仅介绍常用的两种:字典序法和递归法。1、字典序法:如何计算字符串的下一个排列了?来考虑"926520"这个字符串,我们从后向前找第一双相邻的递增数字,"20"、"52"都是非递增的,"26 "即满足要求,称前一个数字2为替换数,替换数的...
分类:
编程语言 时间:
2014-06-27 20:49:45
阅读次数:
209