- 博客(36)
- 资源 (3)
- 收藏
- 关注
原创 poj 1006 与 中国剩余定理
poj 1006 题的思路不是很难的,可以转化数学式:现设 num 是下一个相同日子距离开始的天数 p,e,i,d 如题中所设!那么就可以得到三个式子:( num + d ) % 23 == p; ( num + d ) % 28 == e; ( num + d ) % 33 == i;p,e,i,d 是我们输入的,那么我们需要求出num即可,为了方便,我们将num
2013-03-27 09:46:56 9969 3
原创 算法导论:关于时间复杂T(n)的表达式处理
MIT算法导论提供了三种方法,不废话了,直接介绍:( 公式显示不了,所有就截图了,请包涵~ 呵呵)1. 代换法:猜测-> 验证 例如:T(n) = 4*T(n/2) + n ( 其中T(1) =O(1) ) 假设是时间复杂度是n^3 那么证明:那么设T(k) 那么带入有:
2013-03-20 16:20:42 7059
转载 又见 AVL ( 平衡二叉树 )
最近变懒了,代码都懒得写,真无语,不过这个链接的AVL的代码还是不错的!http://blog.csdn.net/a_1_2_ab/article/details/6585823#include#include#define EH 0#define LH 1#define RH -1typedef struct Bitree{ int data; int bf;
2013-03-19 09:19:00 1151
原创 孩子们的游戏(圆圈中最后剩下的数)
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=29每年六一儿童节,JOBDU都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为JOBDU的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为
2013-03-19 08:42:51 1518
原创 扑克牌顺子
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=28LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A
2013-03-19 08:39:15 1299
原创 Move!Move!!Move!!!
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=26汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的
2013-03-19 08:34:40 913
原创 翻转单词顺序
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=25JOBDU最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识
2013-03-19 08:29:46 1818
原创 和为S的连续正数序列
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=24小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的
2013-03-19 08:24:49 2815
原创 和为S的两个数字
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=23输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。输入:每个测试案例包括两行:第一行包含一个整数n和k,n表示数组中的元素个数,k表
2013-03-19 08:18:55 1504
原创 数组中只出现一次的数字
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。输入:http://ac.jobdu.com/problem.php?cid=1039&pid=22每个测试案例包括两行:第一行包含一个整数n,表示数组大小。2第二行包含n个整数,表示数组元素,元素均为int
2013-03-19 08:10:17 1140
原创 二叉树的深度
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=21输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。输入:第一行输入有n,n表示结点数,结点号从1到n。根结点为1。 n 接下来有n行,每
2013-03-19 08:02:12 1735
原创 数字在排序数组中出现的次数
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=20统计一个数字在排序数组中出现的次数。输入:每个测试案例包括两行:第一行有1个整数n,表示数组的大小。1第二行有n个整数,表示数组元素,每个元素均为int。第三行有1个整数m,表示接下来有m次查询。1
2013-03-19 07:57:26 1813
原创 数组中的逆序对
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=19在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。输入:每个测试案例包括两行:第一行包含一个整数n,表示数组中的元素个数。其中1 第
2013-03-19 07:53:31 941
原创 找到第一个只出现一次的字符
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=18在一个字符串(1输入:输入有多组数据每一组输入一个字符串。输出:输出第一个只出现一次的字符下标,没有只出现一次的字符则输出-1。样例输入:ABACCDEFF
2013-03-19 07:51:31 1856
原创 丑数 问题
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=17把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。输入:输入包括一个整数N(1
2013-03-19 07:46:45 1935 1
原创 所有员工年龄排序
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=16公司现在要对所有员工的年龄进行排序,因为公司员工的人数非常多,所以要求排序算法的效率要非常高,你能写出这样的程序吗?输入:输入可能包含多个测试样例,对于每个测试案例,输入的第一行为一个整数n(1输入的第二行
2013-03-19 07:39:27 3877
原创 最大子向量和
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=14HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天JOBDU测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应
2013-03-19 07:35:13 1277
原创 最小的K个数
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。输入:每个测试案例包括2行:第一行为2个整数n,k(1第二行包含n个整数,表示这n个数,数组中的数的范围是[0,1000 000 000]。输出:对应每个测试案例
2013-03-19 07:12:56 1071
原创 数组中出现次数超过一半的数字
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=12数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。输入:每个测试案
2013-03-18 09:17:30 874
原创 字符串的排序
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=11输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。输入:每个测试案例包括1行。
2013-03-18 09:14:29 912
原创 二叉树中和为某一值的路径
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=10输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。输入:每个测试案例包括n+1行:第一行为2个整数n,k(1
2013-03-18 09:08:51 1165
原创 二叉搜索树的后序遍历序列
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=9输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。输入:每个测试案例包括2行:第一行为1个整数n(1第二行包含n
2013-03-18 09:05:36 4093
原创 栈的压入压出
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=8输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5
2013-03-18 08:58:19 1457
原创 顺时针打印矩阵
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵:1 2 3 45 6 7 89 10 11 1213 14 15 16则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.输入:输入可能包含多个测试样例,对于每
2013-03-18 08:53:28 1258
原创 变态跳台阶 和 跳台阶 和 矩形覆盖
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目: http://ac.jobdu.com/problem.php?cid=1039&pid=4http://ac.jobdu.com/problem.php?cid=1039&pid=5http://ac.jobdu.com/problem.php?cid=1039&pid=6见:另一篇文章:htt
2013-03-18 08:49:30 875
原创 重建二叉树
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述:http://ac.jobdu.com/problem.php?cid=1039&pid=1输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二
2013-03-18 08:44:49 4064
原创 二维数组中的查找
何海涛:《剑指Offer:名企面试官精讲典型编程题》:九度OJ题目描述: http://ac.jobdu.com/problem.php?cid=1039&pid=0在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。输入:输入可能包含多个测试样例,对于每个测试
2013-03-18 08:40:59 3362
原创 桶排序之后 --- > 基数排序
和桶排序一样,也不是基于比较的。基数排序一般用于整数的处理,它的基本原理是:一直想把它说的更白话一点,可是,哎。。。我们可以想象一下,如果现在只有几个各位数 2 6 3 7 ,那么装入数组后是 :修改相应的位置后:那么再由后往前扫描,7 -> 3 -> 6 -> 2对应到位置后为:2 3 6 7 已经排好序了。。。那么
2013-03-16 16:48:59 805
原创 桶排序
如我这几天的风格一样,概念不多说,直接正题: >: 桶排序不是基于比较的排序,最好的时间复杂度可以达到O(n),例如:9个数 10,20,30,40,50,60,70,80,90( 这些数字的顺序是任意的,任意多乱! ),给9个桶,那么每个元素都进一个桶,且桶内无需排序(因为只有一个元素),所以进桶后,在一次出来就可以了,就是线性的!原因就是因为桶排序并不是基于比较排序的,比较排序的限制
2013-03-16 16:38:05 1062
原创 又见 “快速排序”
同上文一样:http://blog.csdn.net/shanshanpt/article/details/8680498快速排序在一般的排序中被认为是平均效率最好的,主要适用于比较乱序的情况,对于基本有序的来说,效率不好~快排的思想很简单,看下图:原序列:4 3 5 2 1 |一般以第一个数位基准点,但是很多其他的方法也行,例如随机一个数( 保证是数组内部的
2013-03-16 12:22:30 804
原创 又见 “归并” 算法
归并算法: 同样,也是回忆篇:http://blog.csdn.net/shanshanpt/article/details/8680224也不想多解释什么,主要是自己做到九度OJ的题目时候想到又要整理一下了,开始看到题目还真没思路,哎,笨啊~ 不过此题使用归并确实是好办法( 我的代码在九度Oj已经通过 )题目:http://ac.jobdu.com/problem.php
2013-03-16 10:45:53 1434
原创 又见 “KMP”
同 http://blog.csdn.net/shanshanpt/article/details/8679459 ,都是回忆版>: KMP的一些概念介绍就不用了,网上到处都是,此处只是为了整理,仅此而已>: 网上看到的文章都是从 “ next ”数组和i,j指针的移动来讲的,这里也一样,不过不同的是,想说的更清晰一点! >: 传统的BF算法与KMP有什么区别呢
2013-03-16 09:38:54 1102
原创 又见 “堆排序”
以前每次遇到排序的时候,要使用高效的算法,总会想到堆,每次都没有总结,都要自己慢慢写,无语,现在总结一下,哎。。。。。方便以后,呵呵!~基本概念: 大根堆:parent的权值大于lchild和rchild 小根堆:parent的权值小于lchild和rchild其基本思想为(以小根堆为例):
2013-03-15 20:35:54 1122
原创 关于 约瑟夫环 问题
/* 此处借助九度oj上的题目!题目描述:每年六一儿童节,JOBDU都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为JOBDU的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为1的小朋友开始报数。每次喊到m的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的
2013-03-12 16:10:11 871
原创 关于 斐波那契数列 的引申
最基本的函数模型是: / 0 n=0f(n)= 1 n=1 \ f(n-1)+(f-2) n>11.我们一般的解法是:int fun( int n ){
2013-03-12 14:35:55 1689
转载 微博传播的数学模型(设想)
转载地址: http://blog.sina.com.cn/s/blog_53999dbd0100qjhn.html微博本质上可以看作是一种媒体。和传统的直线和树形传播不同,微博传播是一种网络传播。这种新型的传播模式可能对未来整个产业带来革命性的影响。简单设想一下微博传播的模型,可以进行数学建模。 微博传播的数学模型:1、微博通过粉丝联系构成网
2013-03-07 09:04:40 2430
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人