- 博客(8)
- 收藏
- 关注
原创 买票找零
编程之美4.3 题目描述:假设有2N个人在排队买票,其中有N个人手持50元的钞票,另外有N个人手持100元的钞票,假设开始售票时,售票处没有零钱,问这2N个人有多少种排队方式,不至使售票处出现找不开钱的局面? 题目分析:这题时典型的卡特兰数(Cartalan)问题Cartalan数令h(1)=1h(n) = h(1)*h(n-1) + h(2)*h(n-2) +
2010-01-30 14:53:00 5786 2
原创 金刚坐飞机问题
问题来源《编程之美》4.1 问题2 问题描述: 现在有一班飞机要起飞了。乘客们准备按机票号码(1,2,3,...,N)依次登记,突然来了只大猩猩(对,他叫金刚),也有飞机票,但是他插队第一个登上了飞机。然后随意的选了一个座位坐下。 现在乘客们虽然感到愤怒,但还是以“和谐”为重,如果自己的位置没有被占领,就赶紧坐下,如果自己的位置被别人(或金刚同志)占了,就随机的选择另一个位置坐下,不再挪动位置。
2010-01-30 14:37:00 3204
转载 3.9重建二叉树
扩展问题2如何判定给定的前序遍历和中序遍历的结果是合理的? 来源于http://blog.csdn.net/bvbook/archive/2008/07/25/2710382.aspx 递归算法实现,分别遍历左右子树,递归中迭代查找左右子树的长度,类似于书中的方法。#include #include using namespace std;bo
2010-01-27 17:28:00 738
转载 3.8求二叉树中节点的最大距离
来源于http://blog.csdn.net/bvbook/archive/2008/07/25/2710209.aspx #include #include using namespace std;struct Node{ bool _visited; Node* left; Node* right; in
2010-01-27 17:14:00 577
转载 [转]面试算法小记
【一】 时间受限 大部分的面试题,都是对时间复杂度有所要求的,如果有涉及,“最快”一类的字样,毫无疑问,先上时空原理,用空间来换时间。Hash,大数组,一些辅助性的空间,都是首选。在我的面试经历中,有无数次用到过Hash和大数组的。不过,通常这不会是面试官想听的唯一解法,他们紧接着十有八九是会说“如果只有xxxx空间呢?”。说此类方法只是为自己争取更多的时间,并且体现思考的完整性,简而言之,装
2010-01-21 15:03:00 2030 1
原创 只考加法的面试题
编程之美 2.21我们知道:1+2=3; 4+5=9; 2+3+4=9;[question]等式左边都是两个以上连续的自然数相加,那么是不是所有的整数都可以写成这种形式呢?写一个程序,对于一个32位正整数,输出它所有的连续自然数之和的算式。1.思路:两数之和 K+K+1=2K+1三数之和 K+K+1+K+2 = 3K+1+2四
2010-01-20 10:58:00 1180
转载 倒排文件的应用
倒排文件,其实出现在了《数据结构》的最后一节~~~不过从来没看过,今儿不小心再遇到这个术语时,百度了一下。然后发现估计半年前某师兄参加某个面试,就说到了倒排文件。 从百度百科贴过来的: 一、何为倒排文件 倒排文件:用记录的非主属性值(也叫副键)来查找记录而组织的文件叫倒排文件,即次索引。倒排文件中包括了所有副键值,并列出了与之有关的所有记录主键值,主要用于复杂查询
2010-01-07 21:38:00 785
原创 关于内部排序的小总结
数据结构本科就没好好学,甚是后悔~~~ 排序这东西我也总是看了就忘... 常见的排序: 1. 插入排序 (稳定排序,时间复杂度o(n^2));2. 冒泡排序 (稳定排序,时间复杂度o(n^2);3. 快速排序 (非稳定排序,时间复杂度平均o(N*logN),最差情况下时间复杂度也为o(n^2));(书上说递归栈上空间占用o(logN),被快速排序所使用的空间,依
2010-01-07 21:23:00 615 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人