- 博客(15)
- 资源 (19)
- 收藏
- 关注
原创 面试题整理-线性时间求最长回文子串
Longest Palindromic SubstringGiven a string S, find the longest palindromic substring in S. You may assume that the maximum length ofS is 1000, and there exists one unique longest palindromic substr
2011-11-17 21:37:57 1457
原创 面试题整理-链表形式大数求和
两个整数,每位的十进制表示都放到链表中,不过是倒序的,需要求出其结果。原题如下:Add Two NumbersYou are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes cont
2011-11-17 20:38:47 1883
原创 编程珠玑第一章补充
2、求出2.5亿个整数中不重复的数字,注意内存无法存下2.5亿的数字。(1)说明你的思路(2)写出你的算法,可以用语言实现或者用伪代码表示 个人提示:位图法1、这里用到两个位图,先填充第一个位图a。当发现一个数字被填充过之后,则用这个数字填充b。很明显,b中记录的是重复出现过的数字。2、当扫描完一次之后。再扫描b位图。只要出现在b位图中的数,就拿去清除a
2011-11-16 22:55:25 854
原创 母牛问题
现有一头母牛,其2岁、4岁会生一头小牛。其他生下来的小牛也是如此。那么n年之后,有多少头牛?#include#include#includeint a[7];int main(void){ int n, i; while (scanf("%d", &n) != EOF && n){ if (1 == n) {printf("1\n"); continue;}
2011-11-16 22:50:19 731
原创 编程珠玑第8章-课后习题10题补充
按照原题的意思是在题目上进行扩展。本来是要找一个连续子数组,其和最大。那么现在习题的要求是找到这么一个连续子数组,其和的绝对值最接近0。O(n^3)或O(^2)的实现都很好处理。O(n^3)到O(n^2)的差别在于可以一次性求出sum(i ~~j)的值。这个可以想一下的。如下例int sum[n];sum[0] = a[0];for (int i = 1; i < n;
2011-11-16 12:54:10 2053 2
原创 LeetCode 题目之 数组两数之和问题
LeetCode上的一个题:给定一个数组,寻找在这个数组中是否存在两个数之和为某个定值。要点:1、一个数就是一个数,比如[2, 1],寻找和为4时,不能使用2+2。2、需要输出位置。排序方法首先排序,然后按照编程之美中提到的方法进行处理。代码如下.#include#include#includeusing namespace std;c
2011-11-16 09:42:15 2936 1
原创 一个简单的C程序
从终端读入一个字符,再从终端输出。#includeint main(void){ int c; while ((c = getc(stdin)) != EOF) if (putc(c, stdout) == EOF) fprintf(stderr, "Error occur when put char\n"); if
2011-11-15 22:17:55 692
原创 POJ 1010 邮票
题意: 给出n种邮票,每种邮票有自己的面值(面值可能重复) 指定m种“总面值”,对每种“总面值”,求解满足如下条件的组合以达到该“总面值”(1) 所用邮票在n种中可以重复选取(2) 所用邮票张数〈=4(3) 尽量多的使用那个不同种类的邮票 Max (Stamp Types)(4) 若有多种方案满足(3),则选取张数最小的一种方案 Min (Stamp Num)(5)
2011-11-14 19:31:01 964
原创 斯特林公式在 ACM中的使用
给两个斯特林公式的链接http://episte.math.ntu.edu.tw/articles/mm/mm_17_2_05/page2.html http://hi.baidu.com/vincentz/blog/item/54686c63fa113f630c33fafe.html现在为止,遇到两个这样的题,还是写一下,尽管是水题。第一个题,求阶乘的最高位。h
2011-11-12 16:15:38 3775
原创 动态规划 最长不重复连续子串
题意Longest Substring Without Repeating CharactersGiven a string, find the length of the longest substring without repeating characters. For example, the longest substring without repeating letter
2011-11-10 22:39:53 2819
原创 ACM 算法艺术与信息学竞赛 1.2.2 钓鱼 Gone Fishing
继续向前做题。这个题在http://poj.org/problem?id=1042还是粘一下题原题题意分析首先要弄清楚,在我看来是最重要的一句话是,每个鱼池只经过一次,只能按照从左向右的顺序访问。并不是每个池塘都必须停下来钓鱼。这句话太重要了,没有这句话,这个题直接就上难度了。也就是说如果有1,2,3,4个池塘。那么可以选择只钓1,3两个池塘的。2只是路
2011-11-10 21:08:12 3030 3
原创 POJ 1009题解
题意就是给定一个图的RLE表示。然后求这个图的每个像素点的绝对值。每个像素点的绝对值由其周围的8个点的最大绝对值来决定。从给的两个图应该可以看出来了。不多说了。限制:数量级很大,时间要求很短。要求需要处理好内存的关系与时间的关系。首先你是不可以把整个图按其真实情况存放起来的。那么需要按照如下方式处理:由于相同的点是连续的,那么在处理时,这些连续的点中间的
2011-11-09 22:28:40 830
原创 素数
素数一直是个头疼的话题,不过最好还是克服一下。至少知道如何来进行处理。求a^b那种老掉牙的for循环就不要写了吧。这里粘个高效的。templateT _exp(T a, T b){ T odd = 1; while (b > 1) { if (b&1) odd *= a; a *= a; b >>= 1; } return a*odd;}求a^b
2011-11-08 21:50:30 671
原创 ACM 算法艺术与信息学竞赛 1.2.7 超长数字串
题意顺序打印的字符串123456789101112131415161718~~~~要找到给定数字串第一次出现的位置。比如10第一次出现在10,1011也是出现在10位置。1第一次出现在1。分析:按照书上所说的枚举的思想来进行处理。思想主要是分段,比如123可以分为1,2,3一个段也可以分为3[123]13的一部分那么在考虑分段时,主要采用
2011-11-05 15:18:05 2812
原创 二进制位交换 反转 计数
如何交换一个整形数的二进制表示的其中两位.比如要把a,与b进行交换。那么方法如下:x表示任意值。xxxx xxxx xxxx xaxx xxxx xxbx xxxx xxxx分为两步:第一步:首先要求得xxxx xxxx xxxx x0xx xxxx xx0x xxxx xxxx第二步:在第一步的基础上加上:0000 0000 0000 0b00 0000 00
2011-11-03 12:39:49 4942
精通正则表达式PDF
2010-03-05
Ubuntu编译Linux-0.11运行
2009-07-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人