2012年4月10日

滑雪(二维平面上 动态规划)

摘要: http://acm.pku.edu.cn/JudgeOnline/problem?id=1088先MARK,待自己慢慢研究出来再A!http://www.cppblog.com/AClayton/archive/2007/09/17/32336.aspx#include <iostream> #include <cstdio> #include <cstdlib> using namespace std; #define MAXNUM 10 int dlen[MAXNUM][MAXNUM]; unsigned int a[MAXNUM][MAXNUM]; 阅读全文

posted @ 2012-04-10 19:23 jjtx 阅读(257) 评论(0) 推荐(0) 编辑

2012年4月8日

最长递增子序列(LIS) 学习中ing

摘要: 单调递增最长子序列描述求一个字符串的最长递增子序列的长度如:dabdbf最长递增子序列就是abdf,长度为4输入第一行一个整数0<n<20,表示有n个字符串要处理随后的n行,每行有一个字符串,该字符串的长度不会超过10000输出输出字符串的最长递增子序列的长度样例输入3 aaa ababc abklmncdefg样例输出1 3 7Accepted #include<stdio.h> int length(char * s) { int len[128] = {0}, i, t; for(; *s != '\0' && (t = len[* 阅读全文

posted @ 2012-04-08 16:39 jjtx 阅读(242) 评论(0) 推荐(0) 编辑

心情

摘要: 我每天都关注你的状态可我几乎从不评论。因为那里面诉说的都是我不知前后的故事。说的也都是无关于我的事情。可我还是每天都看,因为它多少能让我知道你最近的心情。我们彼此的交集变得越来越少。我知道所有的难过与快乐在时间的打磨下都会变得无色无味。慢慢得习惯了不再问候,慢慢的变的无话可说。于是在那个交点之后我们越走离彼此就越远。尽管拼命地阻拦到最后才发现在现实面前我变得无能为力。我明白这不是我们彼此期待的结果但我们早已无力对抗这距离、时间、以及越来越多的空集。在往后有一天我们在某个路口偶然相遇,猛然发现那个就是曾经陪我一起上课下课的人。但或许那时我们早已不再年轻。我知道我们注定会越走越远。但我希望你带着我 阅读全文

posted @ 2012-04-08 14:28 jjtx 阅读(181) 评论(0) 推荐(0) 编辑

2012年4月7日

POJ 1163题 数字三角形问题(动态规划)

摘要: http://poj.org/problem?id=11631、普通递归#include <iostream> #include <cstring> #include <cstdio> using namespace std; #define __max(a,b) (((a) > (b)) ? (a) : (b)) #define MAXNUM 101 int N; int aMax[MAXNUM][MAXNUM]; // aMax is memorandum int matrix[MAXNUM][MAXNUM]; int Max(int i, int 阅读全文

posted @ 2012-04-07 19:11 jjtx 阅读(548) 评论(0) 推荐(0) 编辑

我的第一个动态规划程序(试图用递归求斐波拉契数)

摘要: 1、这是一般的递归(指数爆炸型,时间复杂度O(1.618^n)):#include <iostream> #include <cstdio> using namespace std; __int64 Fib(int n) { if(n == 1 || n == 2) return 1; return Fib(n - 1) + Fib(n - 2); } int main(void) { int n; while(cin >> n) printf("%I64d\n", Fib(n)); return 0; }2、今天看了动态规划的入门,觉得 阅读全文

posted @ 2012-04-07 14:31 jjtx 阅读(446) 评论(0) 推荐(0) 编辑

2012年4月6日

Catalan number

摘要: Catalan number 定义:,n>=0学到现在,已知的用处如下:1、n个元素进栈,有C(n)种不同的出栈序列。2、二叉树。学到了再补充。 阅读全文

posted @ 2012-04-06 13:04 jjtx 阅读(138) 评论(0) 推荐(0) 编辑

2012年4月4日

NYOJ 2题 括号配对问题

摘要: http://acm.nyist.net/JudgeOnline/problem.php?pid=21、我的代码: #include <iostream> #include <cstring> using namespace std; #define MAXSIZE 10005 int main(void) { int k; cin >> k; while(k--) { char str[MAXSIZE]; cin >> str; char stack[MAXSIZE]; int len = strlen(str); int j = 0; boo 阅读全文

posted @ 2012-04-04 00:52 jjtx 阅读(235) 评论(0) 推荐(0) 编辑

2012年3月31日

NYOJ 35题 表达式求值,四则运算(栈实现) 严蔚敏

摘要: 这些函数中都有“重复”的,因为操作数(OPND)栈用double,操作符(OPTR)栈用char。C++中的模板可以解决这个问题吗?这是对着书写的:#include <iostream> using namespace std; #define STACK_INIT_SIZE 100 #define STACKINCREMENT 100 char Precede_Matrix[7][7] = { {'>', '>', '<', '<', '<', '>' 阅读全文

posted @ 2012-03-31 22:13 jjtx 阅读(356) 评论(0) 推荐(0) 编辑

括号匹配(栈实现)

摘要: #include <cstdio> #include <iostream> using namespace std; #define MAXSIZE 20 typedef struct { char *base; char *top; int stacksize; }SqStack; void InitStack(SqStack &S) { S.base = (char *)malloc( MAXSIZE * sizeof(char) ); if(S.base == NULL) exit(-2); S.top = S.base; S.stacksize = MA 阅读全文

posted @ 2012-03-31 13:17 jjtx 阅读(185) 评论(0) 推荐(0) 编辑

文字常量区,字符串常量

摘要: 可以:#include <stdio.h> int main(void) { char str[8] = {0}; str[0] = *"jiang"; printf("%s\n", str); return 0; }2012/5/16 更新补充一个例子(正确):#include <iostream> using namespace std; int main(void) { cout << "0123456789"[5] << endl; return 0; }输出结果是5 阅读全文

posted @ 2012-03-31 00:50 jjtx 阅读(152) 评论(0) 推荐(0) 编辑

2012年3月30日

为什么 C++不叫作++C? o(∩_∩)o

摘要: 【答】 C++之名是 Rick Mascitti 在 1983 年夏天定名的(参见 The C++ Programming Language(Special Edition) 1.4节) ,C说明它本质上是从 C语言演化而来的,“++”是 C语言的自增操作符。C++语言是 C 语言的超集,是在 C 语言基础上进行的扩展(引入了 new、delete 等 C语言中没有的操作符,增加了对面向对象程序设计的直接支持,等等) ,是先有C 语言,再进行++。根据自增操作符前、后置形式的差别(参见习题 5.15 的解答) ,C++表示对 C语言进行扩展之后,还可以使用 C语言的内容;而写成++C则表示无法 阅读全文

posted @ 2012-03-30 18:45 jjtx 阅读(196) 评论(0) 推荐(0) 编辑

2012年3月29日

矩阵的特征值 => 矩阵的幂 => 广义斐波拉契数列的通项公式

摘要: 众所周知,计算机里动辄涉及到斐波拉契数列,本文主要是运用线性代数的方法求出广义斐波拉契数列的通项公式。广义斐波拉契数列的定义(自定义,可能还不够严谨,欢迎指教)如下:且a,b满足a^2 + 4b > 0(原因后面有,即保证分母Δ>0)观察递推公式可知: (1)OK!写这篇博客有两点启示:1.亦可用差分方程的方法求通项公式,不过我还没学,我发现把递推关系用矩阵的形式写成再求通项也是可以的,不过要构造出这个关系比较困难,比如(1)式。2.在一般的算法中求矩阵的幂几乎都是用二分法求,殊不知若λi下有ki个线性无关的特征向量(ki是λi的重根数),即可用相似对角形的方法求,这在高等数学里可 阅读全文

posted @ 2012-03-29 09:58 jjtx 阅读(475) 评论(0) 推荐(0) 编辑

2012年3月27日

书单

摘要: 计算机程序设计艺术算法导论代码大全编译原理人月神话软件随想录C程序设计语言C++ PrimerC++程序设计语言C++沉思录Effective C++More Effective C++Java编程思想STL源码剖析设计模式设计原本程序员修炼之道离散数学及其应用计算机程序的构造和解释深入理解计算机系统架构之美编程珠玑黑客与画家代码之美UNIX编程艺术人件编程之美C和指针C陷阱与缺陷C专家编程C++ Primer PlusC++编程思想Essential C++C++标准程序库具体数学深入浅出MFC持续更新,待加链接中。。算法艺术与信息学竞赛 阅读全文

posted @ 2012-03-27 19:02 jjtx 阅读(158) 评论(0) 推荐(0) 编辑

2012年3月24日

约瑟夫环,杀人游戏(静态循环链表实现)

摘要: 觉得用静态循环链表最划算了。1、动态链表要动态分配,指针移来移去,释放指针等等,弄得很烦,容易出错。2、用循环链表是当然的了。// DS: 似循环静态链表 #include <iostream> #include <cstdio> //#include <cstdlib> using namespace std; int Kill_You( const int sum = 1, const int distance = 1, const int start = 1) { // 一共参加自杀的人数有 sum 个,每 distence 个人就杀一个,从第 sta 阅读全文

posted @ 2012-03-24 15:51 jjtx 阅读(269) 评论(0) 推荐(0) 编辑

2012年3月10日

indent 用法

摘要: indent是一个很有用的c源代码对齐工具。一般大家有自己喜欢的风格,可以根据需要来设定indent的风格。Linux Style是:-nbad -bap -nbc -bbo -hnl -br -brs -c33 -cd33 -ncdb -ce -ci4-cli0 -d0 -di1 -nfc1 -i8 -ip0 -l80 -lp -npcs -nprs -npsl -sai -saf -saw-ncs -nsc -sob -nfca -cp33 -ss -ts8 -il1我采用的是类Linux Style:indent -bad -bap -nbc -bbo -hnl -br -brs -c3 阅读全文

posted @ 2012-03-10 23:51 jjtx 阅读(672) 评论(0) 推荐(0) 编辑

2012年3月7日

Ackermann Function C++实现

摘要: Ackermann Function 是用递归方法定义的,定义如下:(有的资料上阿克曼函数的定义中 m, n 的位置调换了,相应的函数式要对称性地变化,注意取值。)A: N^2 -> N 它的部分函数值如下:C++ 代码如下: 1 #include <iostream> 2 using namespace std; 3 4 __int64 Ackermann (int m, int n) 5 { 6 if(m == 0) 7 return (n + 1); 8 if( m > 0 && n == 0 ) 9 return Ackermann... 阅读全文

posted @ 2012-03-07 17:34 jjtx 阅读(554) 评论(0) 推荐(0) 编辑

2012年3月5日

对三大数学软件 Mathematica 、Maple 、MATLAB 的小测试比较

摘要: 今天一时兴起,突然想试试几个数学软件的功能,就测试了一个不定积分,看看哪个算得最好,最简洁。计算:以下计算结果我都一一验算了。1).先在Mathematica(我用的是在线的wolframalpha)中计算,结果是:2).然后是在Maple 中计算,结果是3).最后再用MATLAB ,结果是当然了,被积函数是可以变形的 ,比如把被积函数通过三角变换化一下之后积分就可以写成这样:再用Mathematica计算,结果就不一样了:好了,从计算结果比较看来,我认为在这方面 Mathematica 最智能,不过都是电脑在算,人是活的,换种给出的形式得到的结果可能就会不同,正如最后的例子所示。今天就写到. 阅读全文

posted @ 2012-03-05 16:54 jjtx 阅读(539) 评论(0) 推荐(0) 编辑

2012年2月26日

sizeof 那点破事

摘要: 2012年Google的一道面试题:运行下图中的C++代码,输出是什么?int SizeOf(char pString[]) { return sizeof(pString); } int _tmain(int argc, _TCHAR* argv[]) { char* pString1 = "google"; int size1 = sizeof(pString1); int size2 = sizeof(*pString1); char pString2[100] = "google"; int si... 阅读全文

posted @ 2012-02-26 00:35 jjtx 阅读(144) 评论(0) 推荐(0) 编辑

2011年8月31日

又是一个深夜里

摘要: 又是一个深夜里。 今天几位同学出去吃饭,谈到了学习的话题,说到大一的绩点问题,听到某位同学这学期拿了第一,我比较震惊,因为这学期我是80名,差距!!!这就是差距!五个同学里,我绩点最低。高中时候,不是这样的!这是大学吧,青年才俊汇集之地。我不想这个样子下去!我也想进年级前几名!!!为什么别人行,我就不行?身边那位拿第一的同学,我是看在眼里的,平常完全是三点一线,上午、下午、晚上都在教室里,好成绩不是凭空来的!!!我要向他学习了。再看看某些同学,我都不说什么了,我可以这么说,我几乎可以看到他们三年以后是什么样子了,这样,还真别来大学!!!你,整天来玩游戏的,你是人吗?殊不知,你父母此时在干什么. 阅读全文

posted @ 2011-08-31 01:11 jjtx 阅读(158) 评论(0) 推荐(0) 编辑

2011年8月10日

今天

摘要: 今天是我第一次在CSDN上写博客,有太多关于计算机专业的想法。今天有兴致写博客是因为近来想法太多,加上今晚听了一首歌叫做《英雄的黎明》,让我有一种动“笔”的冲动了。我是快上大二的人了,我在想我在大一的一年里获得了什么,其实也早就想过了,觉得在学习上有两件事完成得比较漂亮,一是把伟大的微积分大厦基本学完,我们计算机专业学的是高等数学,在上大学之前高三的时候听说高数不是一般地难,我当时想快点让我来见识见识吧!不出我所料,自我感觉学得还是不错的吧,挺有趣。再有一件事,就是学完了C语言的基本规则,我只能说是学完了皮毛,算个入门了。从各方听说C语言很重要。C是在大一上学期学的,学完也没怎么深究了,而有. 阅读全文

posted @ 2011-08-10 23:49 jjtx 阅读(163) 评论(0) 推荐(0) 编辑

2011年5月18日

x&(x-1)表达式的意义

摘要: 求下面函数的返回值(微软) -- 统计1的个数-------------------------------------int func(int x){int countx = 0;while(x){countx++;x = x&(x-1);}return countx;} 假定x = 999910011100001111答案: 8思路: 将x转化为2进制,看含有的1的个数。注: 每执行一次x = x&(x-1),会将x用二进制表示时最右边的一个1变为0,因为x-1将会将该位(x用二进制表示时最右边的一个1)变为0。判断一个数(x)是否是2的n次方--------------- 阅读全文

posted @ 2011-05-18 02:31 jjtx 阅读(197) 评论(0) 推荐(0) 编辑

2011年5月17日

马化腾问: 交换两个数组使两个数组和的差最小

摘要: http://blog.csdn.net/kittyjie/archive/2009/07/28/4386742.aspx 阅读全文

posted @ 2011-05-17 16:33 jjtx 阅读(122) 评论(0) 推荐(0) 编辑

等比数列的和

摘要: http://acm.hdu.edu.cn/showproblem.php?pid=3411http://hi.baidu.com/aekdycoin/blog/item/63f633ec11c822d8b21cb168.html 阅读全文

posted @ 2011-05-17 00:33 jjtx 阅读(141) 评论(0) 推荐(0) 编辑

导航