居然发现了一个网站可以购买春蚕# pets - 心有所宠I*A2010-03-01 08:031 楼我糊涂了。。Pg 127上的那个genknuth(int m, int n)算法明明不能select exactly m integers啊,为嘛作者大师说能?大家给我解解惑please...
a*e2010-03-01 08:032 楼http://www.amazon.com/Yamaha-YAS-152BL-Soundbar-Speaker-BluetooThank you very much!
f*n2010-03-01 08:033 楼养蚕,版上有不少同学小时候都养过吧?俺记得4/5年级的时候养过一春。向一个同学讨要了一角沾着一大片蚕卵的草纸,天暖了以后孵化了30来条。有10余条一直长大到吐丝作茧。那时候家里没有冰箱,每天放学后都得去给蚕宝宝采集一把桑叶才回家,风雨无阻。今天在网上偶尔看到一个网站,居然有卖春蚕和蚕卵的,还有卖人工合成的饲料,没有桑树也能养;不能不佩服现代商业的推动力。顺便说一下,不喜欢虫类的别去这个网站,他们也出售其他的虫子!................................http://www.mulberryfarms.com/
d*e2010-03-01 08:036 楼那一页第一行开始就是解释。由于m<=n,那么总有一个i = n - m,那if里是true,然后m--,(bigrand()%(n-i)直到m=0,这时就肯定是输出m个数【在 I**A 的大作中提到】: 我糊涂了。。: Pg 127上的那个genknuth(int m, int n)算法: 明明不能select exactly m integers啊,: 为嘛作者大师说能?: 大家给我解解惑please...
I*A2010-03-01 08:038 楼问题我就是没看明白他的解释。。而且我拿程序测试了,不是m个数儿【在 d**e 的大作中提到】: 那一页第一行开始就是解释。: 由于m<=n,那么总有一个i = n - m,那if里是true,: 然后m--,(bigrand()%(n-i): 直到m=0,这时就肯定是输出m个数
d*e2010-03-01 08:0310 楼你看得还真快啊,我跟你同一天买的,我还一页没翻过 -_-!【在 I**A 的大作中提到】: 我糊涂了。。: Pg 127上的那个genknuth(int m, int n)算法: 明明不能select exactly m integers啊,: 为嘛作者大师说能?: 大家给我解解惑please...
d*e2010-03-01 08:0312 楼对……你给的。。。 谢谢哈。。。唉,说起惭愧,我还没机会用 -_-!【在 I**A 的大作中提到】: 哈哈哈,coupon是我给找的不?: 我关键是下周要用。。。
d*e2010-03-01 08:0313 楼刚写了一下,出来的结果是对的,不知你是不是某一步写错了。#include #include #include using namespace std;void genknuth(int m, int n){for(int i = 0; i < n; i++){if(rand() % (n-i) < m){cout << i << endl;m--;}}}int main(int argc, char * argv[]){srand(time(0));genknuth(15, 20);return 0;}【在 I**A 的大作中提到】: 问题我就是没看明白他的解释。。: 而且我拿程序测试了,不是m个数儿
I*A2010-03-01 08:0314 楼不客气请你继续去钻研那个pg 127以后你肯定用得着我撤了【在 d**e 的大作中提到】: 对……你给的。。。 谢谢哈。。。: 唉,说起惭愧,我还没机会用 -_-!
I*A2010-03-01 08:0315 楼我用Java写的public static void genKnuth(int m, int n){Random myr = new Random();for(int i=0; iif((myr.nextInt() % (n-i)) < m){System.out.print(i + " ");m--;}}public static void main(String[] args) {genKnuth(5,20);}产生的总是多于5个。。难道这个random function有问题???我觉得不应该啊。而且我把你的解释和作者的解释又看了好几遍,还是没明白。。【在 d**e 的大作中提到】: 刚写了一下,出来的结果是对的,不知你是不是某一步写错了。: #include : #include : #include : using namespace std;: void genknuth(int m, int n): {: for(int i = 0; i < n; i++): {: if(rand() % (n-i) < m)
d*e2010-03-01 08:0316 楼debug过,才知道java的Random.nextInt()可正可负的 -_-!一直以为是非负的。所以恰恰解释了为什么会多过m个.用Random.nextInt(int)这个函数才产生非负。所以改成 myr.nextInt(n)就可以了。【在 I**A 的大作中提到】: 我用Java写的: public static void genKnuth(int m, int n): {: Random myr = new Random();: for(int i=0; i: if((myr.nextInt() % (n-i)) < m){: System.out.print(i + " ");: m--;: }: }
I*A2010-03-01 08:0317 楼多谢!的确是改成getNext(n)就对了。啊, 我终于明白了为嘛是exactly m integers了,笨~~【在 d**e 的大作中提到】: debug过,才知道java的Random.nextInt()可正可负的 -_-!: 一直以为是非负的。: 所以恰恰解释了为什么会多过m个.: 用Random.nextInt(int)这个函数才产生非负。: 所以改成 myr.nextInt(n)就可以了。
K*g2010-03-01 08:0320 楼大家不觉得programming pearls里很多东西是废话吗?仔细看了大半天,拗口难懂的表达,结果对面试什么帮助都没有 (除了少数几个算法)。我真的不明白,为什么那么多人反复推荐那本书。比如说LZ讲的那个算法,在P129页上面不是有个更简单的吗?为什么要反复的讲解那个P127页那个呢,我觉得很多地方是浪费时间。【在 I**A 的大作中提到】: thanks thanks...:)
l*e2010-03-01 08:0321 楼kinda agree. hehe【在 K******g 的大作中提到】: 大家不觉得programming pearls里很多东西是废话吗?仔细看了大半天,拗口难懂的表: 达,结果对面试什么帮助都没有 (除了少数几个算法)。: 我真的不明白,为什么那么多人反复推荐那本书。: 比如说LZ讲的那个算法,在P129页上面不是有个更简单的吗?为什么要反复的讲解那个: P127页那个呢,我觉得很多地方是浪费时间。