- 浏览: 131419 次
- 性别:
- 来自: Ottawa
最新评论
-
God一冰魄:
jcs130 写道thebest 写道感觉保存JSON数据会很 ...
MongoDB 3.0 速上手教程(JAVA) -
xiuxiuxiu:
膨胀腐蚀大概是什么意思,能留个微信吗
结合OPENNI2,Aruco与OPENCV进行视觉定位 -
jcs130:
thebest 写道感觉保存JSON数据会很浪费空间啊。如果每 ...
MongoDB 3.0 速上手教程(JAVA) -
thebest:
感觉保存JSON数据会很浪费空间啊。如果每个记录的标签都是重复 ...
MongoDB 3.0 速上手教程(JAVA) -
jcs130:
liuyar 写道更新很快嘛。加油。谢谢啦,不过接下来要继续研 ...
WiFi遥控小车(三):搭建嵌入式Linux开发环境
文章列表
最近大家在学《数据结构》,是用C语言来实现的,昨天室友问了我个问题,为什么代码执行完了,还没看清楚输出是什么,窗口就关闭了我随口就说了句“在程序最后加上个getchar()就行了。”可是他加上去后还是不 ...
看《Thinking in Java》,第四章最后面的那个练习题(练习10)吸血鬼数字:
吸血鬼数字是指位数为偶数的数字,可以由一对数字相乘而得到,而这对数字各包含乘积的一半位数的数字,其中从最初的数字中选取的数字可以任意排序。以两个0结尾的数字是不允许的,例如,下列数字都是“吸血鬼”数字:
1260 = 21 * 60 1827 = 21 * 87 2187 = 27 * 81
自己写的代码,算法比较简单,但还是达到要求:
public class xxgNUM {
/**
* 判断
*
* @param num
* @ret ...
通过联机黑白棋看云计算、移动互联网和物联网
一、联机黑白棋
终于把通信的一个小项目——联机版的黑白棋做出来了~
说来真是惭愧,本来在暑假结束的时候就应该去做的,但是~╮(╯▽╰)╭
先来说说黑白棋吧:
胡老师说:不要在没做一件事之前抱怨这件事有多么难做。
一个学期过去了……各种事情,把编程的学习几乎全放下了……看着暑假发的那一篇篇博客,虽然不算什么多有技术含量的东西,但是至少证明我曾经努力地学习过。
开学初曾想过把《TCP/IP》那本书看完,现在还只是放在桌子上……
去蓝杰的学习也没怎么去了,已经和我暑假的同学落下很多了,他们已经进行到WEB编程了,而我还是通信刚开始……
买了本《JAVA编程思想》也只是把前面的一小部分看了下,然后就有忙于课业了
虽然我在其他方面倒是取得了些成就,获得了不少经验,但是作为一个程序猿,这个学期我就是算是荒废了!
现在年终将至,期末临近,大考在即!寒假就快来了~
这个寒假我要好好补一下了,不然愧对程序猿这 ...
大一的暑假~过得很充实~前一个月志愿者,后一个月JAVA集训一个月~集训结束了~~现在刚开始接触通信了~要把最基础的这本《TCP/IP》啃掉~现在还没买来纸质版本的,就先下了个电子版看~听学长说,JAVA越到后面越精彩~哈~期待啊~~加油加油~~~
刚才被连续打败了三次……也有可能是现在脑子不清醒了……囧……有兴趣的朋友可以下载玩玩~最好再提点意见~谢谢~
我这个算法并不是往后算到赢的那种……那种算法我还在想怎么实现……
解压就是压缩的逆过程……真是说起来容易做起来难啊……
不过最后还是做出来了,而且发现了前面的压缩函数的几个问题:
1.编码区不用存入补的零的个数:因为解压的时候是按照每个编码的长度截取的,所以到最后剩下的另不会造成任何影响,这样就不用再把补的零写进去了
2.从输入流读取数据的顺序要注意:比如下面是我昨天的代码
/************************ 再次读入文件信息,对应每一个字节写入编码 *********************/
// 再次读入文件信息,对应每一个字节写入编码
// 用来读取数 ...
菜鸟说:哈夫曼压缩的问题
- 博客分类:
- 学习小结
搞了一天终于把哈夫曼压缩搞好了,自己想了很多,也参照了别人的代码,终于把自己的做出来了,
关于代码,就不多做说明了,因为思路都是差不多的,代码会在文章最后面贴出来,那我就讲讲几个我遇到的几个问题吧:
1.static尽量不要用:以前我编写什么程序,静态变量太好用了~加个点一引用就好了,不需要传来传去~但是这次我算得到了教训,为了方便,一开始我爸很多变量都设成了静态的,但是邓树构造完成以后,获得叶节点编码的时候,就是一串000000000……找了半天错误不知道错在哪,就把所有的静态变量都设为了private 来回传,结果这样就对了……所以静态变量要少用,尤其是在需要进行递归的场合, ...
菜鸟说:哈夫曼树及哈弗曼编码
- 博客分类:
- 学习小结
终于把哈夫曼树及哈弗曼编码弄好了~
哈夫曼树就是最优二叉树
和上次的搜索二叉树一样,哈夫曼树也有它特定的构造规则:
1.要把要存入哈夫曼树的数据分别创建一个树
2.把这些树按照大小顺序排序(在Java里面用优先队列PriorityQueue非常方便)
3.去两个最小的树,把他们合并在一块儿,并把合并后的树放回队列,如此递归往复……
4.把最后剩下的那个树设置为根节点。
这样,哈夫曼树就构造完成了~
检查方法就是把哈夫曼树的所有叶结点的编码都输出来,向左走编码为0,向右走编码为1(根据自己规定)
然后再根据编码把树画出来,检查 ...
初识“树”——搜索二叉树
- 博客分类:
- 学习小结
今天第一次接触了“树”这种数据结构,和双向链表差不多(一个父亲有多个儿子……)
为了加深理解,老师让我们做一个搜索二叉树~
二叉树 顾名思义就是有两个叉子的树,也是用得比较多的一种,
搜索二叉树的 ...
菜鸟说java里的链表(一)
- 博客分类:
- 学习小结
先说点题外话:
不知道为什么,我们学校还有别的好多学校的软件院都不学C而直接学C++;
我们信息院就只学了C语言……
不过这也有好处……比如C里面的链表学的比较扎实
C有一个重要的东西叫做指针,用指针指来指去就出来链表了,我们上学期学到了单向链表,就是在每一个struct结构体里面只有一个用来指向下一个节点的指针,结构图如下(自己画的,意思到了……):
这是单向链表,给出了头指针就能找到整条链表。
双向链表就是在每一个节点再加上一个用来指向它前一个节点的指针,这样的好处就是不管给你链表中的任何节点,都能把整个链表找到。
环链表,就是把链表的头和尾相连,具 ...
1.先说黑白棋:
上次说的人机对战已经把中等难度的AI做好啦~
我还能赢他就~~是每次赢得不多……
下一步就是做可变权值的AI~~
真要做出来估计我都赢不了他了……
下载地址在这里:http://jcs130.iteye.com/blog/114183 ...
前几天做的黑白棋小游戏,在自己电脑上运行什么事也没有,可是一到别人电脑上就什么图片都没了……原来是因为我是用了“绝对路径”获取图片,打完包以后,虽然图片文件进去了,但是程序还是按照路径读取图片的……所以在别人的电脑上就读不出图片了。
后来想着用相对路径,但是一直也是有问题……
现在是每次都先用getresources搜索,然后获取URL的方法解决了……
那个相对路径我在研究研究……
我就把我那个黑白棋小游戏放上来吧~人计算法写的不是很完善,以后再慢慢完善一下~哈~
现在已经实现了人机对战~以及各种特殊情况(一方不能下子、两方都不能下子、一方无子等)的判断~~
接下来就是完善人机算法啦~至少不会像现在这样,能下角不下 TVT……
多线程这块儿自己搞了个很简单的小游戏,数屏幕上的小球碰撞边框的次数~
可是这个太简单了~拿不出手啊~~那接下来就是和别人一起写一个泡泡龙的小游戏~哈~都是小的时候玩了不知道多少遍的游戏啊~哈~~
刚才去QQ黑白棋上和别人下了几局,关于黑白棋的下法总结了一下,准备写人机对战程序了~:
黑白棋和五子棋不同,棋盘各点的权值不是单纯的通过连子数决定,还和所下位置有很大关系!
这个是黑白棋的棋盘:
黑白棋游戏的核心就是要抢占四个角!因为只要放到了角上,就不会被改变了。这就是“金角银边草肚皮”说法的由来
金角:
角的权值应设为最大。
相对应的,和四个角相邻的格子
如果棋子下在了边上,只能被和他在同边上的棋子改变颜色,所以权值也要设高(if(和角相邻)权值减少),相应的,和边相邻的位置权值要设的低一些
草肚皮:
中间一圈较为安全,初始设置为小值。
下面 ...