回答清华大学的暑假作业,电话号码的排列!!
milkway提出一个问题“在电话语音识别中需要识别电话号码,这需要识别0到9十个数字,而识别前首先需要训练这十个数字,请编写程序设计一个电话号码表,要求数字组数最少。其中:每一组数字都是八位 (例如:62781704),0到9十个数字中每两个数字之间至少连接一次(像62781707,其中出现了:6-2、2-7、7-8、8-1、1-7、7-0、0-7七个连接,7-0和0-7是不同的连接),每个数字在开头、结尾至少各出现一次(像62781707,其中6在开头出现一次,7在结尾出现一次)。”
我以前的公布的电话号码都是错误的。
现在公布我的最新的排列的电话号码。共有十三组,13*7=91也就是说要满足题目的要求应该有十三组电话号码。只有最后一个连接是重复的。总共就重复了一次。这是满足题目的要求的。
01020304
12131415
23242526
34353637
45464748
56575859
67686960
78797071
89808182
90919293
05162738
84950617
7283940
细心的人可能会发现最后一个电话是7位的。这就对了,这就说明整排列的号码中只有一个电话号码是重复的。
在我以前公布的程序当中有一些小错误,但不是很严重的。得到以上结果的程序与以前的程序相差不是很大。 有心者可自已研究一下。