早教吧作业答案频道 -->数学-->
1——100000数列按一定顺序排列,有一个数字排错,如何纠错?写出最好方法.两个数字呢?
题目详情
1——100000数列按一定顺序排列,有一个数字排错,如何纠错?写出最好方法.两个数字呢?
▼优质解答
答案和解析
我觉得这个可以用类似于2分法莱进行查找出出错的那个数字.我把出错分为2中:
1. 相邻交换(1,2,3,5,4,): 这种出错其实可以看成是5错,也可以看成是4错
2. 不相邻插入(1,2,4,5,3):这种出错只有3是错的
考虑到这个,我用1-9做例子: 1-9一共9个数字,则出错有3中情况:
1. 出错的数字仍然在同一边比如(1,3,2,4,5,6,7,8,9)
2. 出错的数字在另外一边(1,3,4,5,6,2,7,8,9)
3. 出错的数字在中间(1,3,4,5,2,6,7,8,9)
观察可得
1. 如果中间的数字没变,说明该错出现在同一边(如1)
2. 如果中间的数字比相邻左边的数字相差1(绝对值),且比相邻右边数字相差1(绝对值),说明该错非中间数字,继续递归左右两半,直到3或者4情况
3. 如果中间的数字比相邻左边的数字相差1(绝对值),且比相邻右边数字相差不等于1(绝对值),说明该错非中间数字,而是右边的数字,复原则结束
4. 如果中间的数字比相邻左边的数字相差不等于1(绝对值),且比相邻右边数字相差等于1(绝对值),说明该错非中间数字,而是左边的数字,复原则结束
1. 相邻交换(1,2,3,5,4,): 这种出错其实可以看成是5错,也可以看成是4错
2. 不相邻插入(1,2,4,5,3):这种出错只有3是错的
考虑到这个,我用1-9做例子: 1-9一共9个数字,则出错有3中情况:
1. 出错的数字仍然在同一边比如(1,3,2,4,5,6,7,8,9)
2. 出错的数字在另外一边(1,3,4,5,6,2,7,8,9)
3. 出错的数字在中间(1,3,4,5,2,6,7,8,9)
观察可得
1. 如果中间的数字没变,说明该错出现在同一边(如1)
2. 如果中间的数字比相邻左边的数字相差1(绝对值),且比相邻右边数字相差1(绝对值),说明该错非中间数字,继续递归左右两半,直到3或者4情况
3. 如果中间的数字比相邻左边的数字相差1(绝对值),且比相邻右边数字相差不等于1(绝对值),说明该错非中间数字,而是右边的数字,复原则结束
4. 如果中间的数字比相邻左边的数字相差不等于1(绝对值),且比相邻右边数字相差等于1(绝对值),说明该错非中间数字,而是左边的数字,复原则结束
看了 1——100000数列按一定...的网友还看了以下:
排一排.(1)按从大到小的顺序排列:500毫米;200厘米;1米;5000米,(2)按从小到大的顺 2020-05-13 …
.Excel的数据排序,下列说法中正确的是().A.最多只能以3个关键字段进行排序B.只能对数据进 2020-05-23 …
数列是有序排列的一组数对吧,可是老师说有的数列没有通项公式(如根号2),可是没用通项公式怎么算是有 2020-06-05 …
关于关键码排序快速排序法,解题思路是什么啊~比如说:设有关键码(66,13,51,76,81,26 2020-06-12 …
1——100000数列按一定顺序排列,有一个数字排错,如何纠错?写出最好方法.两个数字呢? 2020-06-17 …
下面语句的顺序排列恰当的一项是()①长髯覆盖了两颊,遮住了嘴唇,遮住了皱似树皮的黝黑脸膛,一根根迎 2020-07-12 …
以下关于排序的说法中,正确的是()A.排序就是将数按从小到大的顺序排序B.排序只有两种方法,即直接 2020-07-23 …
以下关于排序的说法中,正确的是()A.排序就是将数按从小到大的顺序排序B.排序只有两种方法,即直以 2020-07-23 …
excel的排序问题2007版的excel对多行文字进行排序,在排序对话框中,选中了一列,排序依据 2020-07-28 …
输入N个整数,存入一个数组中。1)应用某种排序算法将这N个数有大到小的顺序排序,输出排序的结果并存入 2020-11-17 …