10个小孩排队买票问题,通过C语言递归解决。
问题:
有10个小孩到公园玩,门票是1元。其中5个小孩带的钱为1元,5个小孩带的钱为2元。售票员没有零钱,问这些小孩共有多少种排队方法,使得售票员总能找得开零钱。
思考:
1. 首先这涉及到高中数学里的排列组合问题。也就是说,两个拿一元零钱的小孩,他们的位置互换,也算是一种新的排法。
<P class=MsoNormal style="MARGIN: 0cm 0cm 0pt
一个元素顺序进出栈的问题,求解共可能有多少种出栈序列。使用c语言进行递归解决。
问题:
有n个元素按顺序进栈,但是在进栈过程中任何时候任何一个元素都可以出栈。
问这样的情况下共可能形成多少种出栈序列。
解决:
根据元素的进出栈过程,可以抽象出一个中间状态。
这个状态就是: k个元素在等待进入栈
A个元素存放于栈中
&nbs
很久就在网上看到这道题,挺有趣,当初答案众多,自己设了4个未知数,列了3个方程才解出来,后来发现其实一个简单的比例就可以解决了~~
P.S.其实好老的题目~
题目:
一支长度为100米的队伍在行进,一个哨兵从队伍尾走到队伍头,又从队伍头走到队伍尾,这个过程中队伍前进了100米。队伍和哨兵的速度都是保持不变的。问这个过程中哨兵一共走了多少米(是路程不是位移~)?
思考:
<SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font...
n个人报数的问题,可以使用c语言进行简单的递归实现。
问题描述:
n个人围成一个圈,编号为1~n,从第1号开始报数,报到3的倍数的人离开(即每数到第三个就离开),一直数下去,直到最后只剩下1人。求剩下的这个人的原始编号。
问题理解:
在将这个问题转化为编程解决的时候,需要考虑如下几个问题:
1. 使用数组来存放人。假设人的数目为count<SPAN style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'; mso-bidi-fon