- 博客(17)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 Qt 程序启动gif动画(也有jpg的)
网上找了许久资料,发现都是不行的,其中一个帖子http://www.cnblogs.com/tlsdba/archive/2012/06/27/2565559.html给了我一些思路,不过这上面明显是错误的,多线程里面不要有界面的东西,编译器会给警报的,我用上面的例子是直接异常结束掉了。大体上的错误也是QPixmap: It is not safe to use
2013-05-15 17:28:24
5268
3
原创 老鼠走迷宫II
由于迷宫的设计,老鼠走迷宫的入口至出口路径可能不止一条,如何求出所有的路径呢? 解法求所有的路径困哪起来复杂但其实更简单,只要在老鼠走到出口时显示经过的路径,然后退回上一格重新选择下一个位置继续递回就可以了,比求出单一路径更简单,程序只需要做一点点修改就行了。 /* *内容;老鼠走迷宫II *时间;3/01/2013 */ #include // 注:二维数组,根
2013-03-05 08:11:40
1383
原创 老鼠走迷宫I
说明:老鼠走迷宫是递回求解的基本提醒,我们在二维阵列中使用2来表示迷宫墙壁,使用1来表示老鼠走过的行走路径,试以程序球场胡入口至出口的路径。 解法:老鼠的走法有上、下、左、右四个方向在每前进一格之后就选一个方向前进,无法前进时退回选择下一个可前进方向,如此在阵列中依序测试四个方向,直到走到出口为止,这是递回的基本题,请直接看程序应就可以理解。 /* *内容;老鼠
2013-02-16 11:57:28
1717
原创 关于一级指针和二级指针的部分理解(I)
时间:2/15/2013在复习一个算法:老鼠走迷宫I 的时候,用到了一个打印迷宫的函数,因为迷宫用一个二维数组来表示,但可能以后在应用中,并不知道二维数组的大小,所以想使用指针的方式来遍历数组。 实际在C++中用 迭代器 应该会更好一点把?还没试过,相信有这东西。不过既然忘记了,就只能自己想办法解决这个问题呗。 #include void printMaze(int *
2013-02-15 17:05:10
4363
原创 洗扑克牌 (乱数排序)
解法: 初学者通常会直接想到,随机产生1~N的乱数并将之存入阵列中,后来产生的乱数存入阵列前必须先检查阵列中是否已有重复的数字,如果有这个数字就不存入,在重新产生下一个数。运气不好的话,重复的次数就会很多,程序的执行速度就很慢了,这不是一个好办法。 以1~52的乱数排列为例好了,可以将阵列先依序由1到52填入,然后使用一个回圈走访阵列,并随机产生1~52的乱数
2013-02-13 17:33:16
1417
原创 巴斯卡三角形
/* *内容:巴斯卡三角 *时间:2/13/2013 */ #include //数学公式 long combi(int n, int r){ long p = 1; for (int i = 1; i <= r; ++i) { p = p*(n-i+1) / i; } return p;}void print(int
2013-02-13 15:45:03
877
原创 Josephus problem(约瑟夫问题)
据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从,Josephus要他的朋友先假装遵从
2013-02-11 14:31:57
759
原创 斐波那契数列(费氏数列)
斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*) /* * 内容:费氏数列 * 时间:2/11/2013 */#include #include #defin
2013-02-11 13:27:26
1709
原创 Algorithm Gossip(基数排序,俗称桶子法)
基数排序的方式可以采用LSD(Least significant digital)或MSD(Most significant digital),LSD的排序方式由键值的最右边开始,而MSD则相反,由键值的最左边开始。 以LSD为例,假设原来有一串数值如下所示: 73, 22, 93, 43, 55, 14, 28, 65, 39, 81 首先根据个位数
2013-02-11 11:55:07
699
原创 算法基础---数据结构---树和二叉树
树: 首先要清楚的概念是:1、结点的度 即该结点有多少个子结点。如1号结点的度是3。2、树的度 所有结点的度的最大值。如图,树的度是3。3、叶子结点 结点的度为0的结点。(既没有子结点)4、分支结点 除了 叶子结点 以外的所有结点。(与叶子结点互补)5、内部结点 除了 根
2013-02-02 11:00:12
589
原创 第六步:Handler与多线程,简单使用。
直接上例子代码:public class MainActivity extends Activity { private Button myButton = null; private ProgressBar myProgressBar = null; @Override protected void onCreate(Bundle savedInstanceS
2013-01-21 12:14:10
2086
原创 第五步:ListView和ProgressBar的使用
关于ProgressBar的使用,跟其他面向对象提供的ProgressBar一样。无非就是在XML文件中声明一个ProgreessBar控件。不过有常用的属性有这些:style="?android:attr/progressBarStyleHorizontal"//水平进度条style="?android:attr/progressBarStyle"//旋转进度条,一个圈圈,跟水平进度
2013-01-19 11:14:49
1925
原创 第四步:Menu事件、常用布局、RadioButton和CheckBox使用方法、Toast的使用方法
关于Menu事件当用户点击Menu按钮时就会调用onCreateOptionsMenu(Menu menu);就可以重写 public boolean onCreateOptionsMenu(Menu menu) {} 事件例如:public boolean onCreateOptionsMenu(Menu menu) { //操作menu,添加菜单项 //
2013-01-12 17:09:54
2723
原创 第三步:Activity的生命周期
官网文档是这样的:MethodDescriptionKillable?NextonCreate()Called when the activity is first created.This is where you should do all of your normal static set up: create views, b
2013-01-11 12:35:22
790
原创 第二步:初识android简单程序
Android的界面是由一个个Activity组成的。 刚创建一个新的android界面的时候,就会自动创建一个Activity。Activity可以理解成为一个窗体,在上面放一些控件,就可以组成一般的程序了。 若想在Activity界面内放控件,必先在项目目录下的 res->layout->内的XML文件里面,一个XML文件可以对应一个Activity,也可以对应多个Activ
2013-01-10 19:52:08
1230
原创 第一步:android环境搭建
参考:http://www.cnblogs.com/skynet/archive/2010/04/12/1709892.html 突然换了小米手机,为了对得起家里人的支持,android起码也要学会,就算不厉害,也不可以太丢人。 0基础,首先就是android环境的搭建,网上各种资料,随便百度就是一大把。基本就是根据上面的网站来搭建起来的。 工欲善其事,必先利其器。首先是把必
2013-01-08 23:04:31
8212
1
C# socket networkstream 接收数据
2015-01-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人