摘要:“中国象棋将帅问题”这一小节中,最后给出这样一段代码——[代码]自己觉得这段代码用结构体封装了两个变量,这样做只能算是小聪明。不过,自己从这种做法中得到启发,可以用一个int变量的十位和个位来“封装”两个变量,具体的代码实现如下——[代码]不过,这种做法和文中给出的一段代码有点相似了[代码]
阅读全文
posted @ 2009-09-26 00:04
|
|||
09 2009 档案
摘要:“中国象棋将帅问题”这一小节中,最后给出这样一段代码——[代码]自己觉得这段代码用结构体封装了两个变量,这样做只能算是小聪明。不过,自己从这种做法中得到启发,可以用一个int变量的十位和个位来“封装”两个变量,具体的代码实现如下——[代码]不过,这种做法和文中给出的一段代码有点相似了[代码]
阅读全文
posted @ 2009-09-26 00:04
摘要:前几天用递归的方法实现了——从数组中返回所有指定长度的子数组。http://www.cnblogs.com/xiangism/archive/2009/09/06/1561398.html后来在看《编程之美》中的一篇文章——《求二进制数中1的个数》时想到另一种比较好的方法,就是用二进制数来实现。比如要从{1,2,3,4,5}中提取所有长度为2的数组(不考虑顺序),可以先用排列的知识算出子数组有多少个,比如这题C25=10个,然后再访问所有从0到9之间的数,当然是用二进制的形式来访问,如果这个二进制数中1的个数为2,那么就在原数组中按照这两个1的位置来取值,从来可以得到一个子数组。那么在遍历所有
阅读全文
posted @ 2009-09-15 21:54
摘要:自己在一个搜索程序中遇到了这样一个问题:怎么从数组(集合)中返回指定长度的子数组(集合)。比如数组{1,2,3,4},现在要返回所有长度为n=2的子数组,即{1,2}{1,3}{1,4}{2,3}{2,4}{3,4}。如果这个n在写代码时就确定,那就用n层循环可以很简单的实现。但是,关键在于n是在程序运行时才知道的,这样就不能只能用循环了。想了几天后,才完全实现了这个功能。CodeCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1usingS
阅读全文
posted @ 2009-09-06 19:05
|
|||