归并排序基本思路就是将数组分成二组A,B,如果这二组组内的数据都是有序的,那么就可以很方便的将这二组数据进行排序。如何让这二组组内数据有序了?可以将A,B组各自再分成二组。依次类推,当分出来的小组只有一个数据时,可以认为这个小组组内已经达到了有序,然后再合并相邻的二个小组就可以了。这样通过先递归的分...
分类:
其他好文 时间:
2014-07-14 09:24:53
阅读次数:
132
线性递归,就是大家平常说的递归,线性递归函数的最后一步操作不是递归操作,将最终条件代入计算。在每次递归调用时,递归函数中的参数,局部变量等都要保存在栈中,当数据量很大的时候,会造成栈溢出。尾递归,也就是线性迭代,尾递归函数的最后一步操作是递归,也即在进行递归之前,把全部的操作先执行完,这样的好处是,...
分类:
其他好文 时间:
2014-07-13 23:38:33
阅读次数:
208
分类表是一种典型的层次化关系的表,从数据库设计工作的角度看,让每个分类记录的 parentId 字段指向它们父分类的 Id 即可。 把层次关系转化为数据表并不困难,而且层次还相对比较清晰,但在这种表面现象的背后还有许多难题在等待着用户解决。
分类:
数据库 时间:
2014-07-13 23:24:43
阅读次数:
560
题目来源,待字闺中,原创@陈利人
,欢迎大家继续关注微信公众账号“待字闺中”
原题给定字符串,可以通过插入字符,使其变为回文。求最少插入字符的数量。例如:
1. ab最少插入1个字符,变为*b*ab
2. aa最少插入0个字符
3. abcd最少插入3个字符,*dcb*abcd
分析:根据回文串的定义,很容易获得递归思路,首先比较第一个和最后一个字符,相等则插入个数等于中间的...
分类:
其他好文 时间:
2014-07-13 00:03:08
阅读次数:
334
楼梯有n阶台阶,上楼可以一步上1阶,也可以一步上2阶,编一程序列出每一种走法。...
分类:
其他好文 时间:
2014-07-12 20:33:13
阅读次数:
148
前言
当序列中元素范围比较大时,就不适合使用计数排序。针对这种情况,就有了基数排序,这是一种按位排序。它仍然是以计数排序为基础。
基数排序
基数排序的基数:十进制数的基数自然是10,二进制的基数自然是2。通常有两种按位排序策略:1.高位优先法(most significant digit first,MSD):简单讲就是从高位排起。2.低位优先法(least significant digit first,LSD):它与高位优先相反,从低位排起。从排序效果上看,高位优先比较直观,但却涉及到递归的过程,故...
分类:
其他好文 时间:
2014-07-12 18:56:51
阅读次数:
225
斐波那契数列又因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”。
fibonacci 数列定义:
n = 1,2 时,fib(n) = 1
n > 2 时,fib(n) = fib(n-2) + fib(n-1)
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584,……...
分类:
其他好文 时间:
2014-07-12 18:51:36
阅读次数:
176
一. 功能需求:
1. 能够让玩家摆棋,并让电脑判断是否正确
2. 能让电脑给予帮助(给出所有可能结果)
3. 实现悔棋功能
4. 实现重置功能
5. 添加点按键音效果更佳
二. 总体设计计:
1. 核心算法:
递归实现(回溯算法):
思路:按行分别安排皇后(Q),Q数目目前为8.
Q1从第一行第一列开始到最后一列,先放在第一列;
...
分类:
其他好文 时间:
2014-07-12 17:44:21
阅读次数:
127
Given a binary tree, determine if it is a valid binary search tree (BST).
Assume a BST is defined as follows:
The left subtree of a node contains only nodes with keys less than the node's key.Th...
分类:
其他好文 时间:
2014-07-12 17:26:31
阅读次数:
256