作者fakespace (虚空)
看板Programming
标题Re: [请益] 排列组合的程式逻辑
时间Thu Aug 21 02:22:22 2008
用个 stack, 做 push 和 pop 的 operation 就可以了
画一下图..就可以找出规律. 如:
push 1
push 2 <--- 1+1
push 3 stack 长度为 M, 印出 stack =>(1 2 3)
pop 3
push 4 stack 长度为 M, 印出 stack =>(1 2 4)
pop 4
push 5 stack 长度为 M, 印出 stack => (1 2 5)
pop 5 5>=N, 再 pop
pop 2
push 3 <--- 2+1
push 4 stack 长度为 M, 印出 stack => (1 3 4)
....
要注意 如果要 pop 空的 stack 时, 程式就应结束了
※ 引述《magiccat (~米雪~)》之铭言:
: dear all,
: 目前有一个排列组合的程式要写,
: 例如:C5取3(看得懂我在写什麽吗?)
: 应该会有10种组合,
: 那麽我应该要怎样透过程式自动排列出来并记录成下列的格式呢?
: 1 2 3
: 1 2 4
: 1 2 5
: 1 3 4
: 1 3 5
: 1 4 5
: 2 3 4
: 2 3 5
: 2 4 5
: 3 4 5
: 目前的想法是回圈+副程式(副程式再CALL副程式自己)(但就是一直有盲点)>"<
: 希望有人指点一下, 谢谢!!我用的是E-views的统计软体在写程式
: E-views的程式写法跟VB比较像(C语言的写法我看不懂, 谢谢!)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.222.120