购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

算法设计练习

1.有 m m 为正整数)组数据,每组有 n n <100)个元素,对于每一组数据需要按中间高两边低以中心对称分布进行排列,中心对称位置处左侧数据可略高于右侧,若存在两个数值相同的情况,则将之分置于中心位置两侧对应的对称位置。例如,当输入1组6个数据160 161 159 156 170 182时,输出结果为159 161 182 170 160 156。

2.使用冒泡排序将给定 n 个数字序列进行从小到大的排序,计算排序过程中需要进行交换的次数。例如,当输入5个数据9 1 0 5 4时,输出的交换次数为6。

3.给定平面上的 n n ≥2)个点,将各个点按输入顺序从1开始编号(第一个点的编号为1,第二个点的编号为2,其他依此类推),按1-2,1-3,…,2-3,2-4,…顺序计算各点对间的欧几里得距离并构成距离序列。将距离序列中最小的一个与距离序列中最前端元素交换,将最大的一个与距离序列中最后端元素交换。例如,输入5个点对2 2-7 7 5-3 0 0-1-1时,输出的距离序列为1.41 5.83 2.83 4.24 1.41 9.90 10.00 5.83 6.32 15.62。

4.将给定 n n <100)个数从小到大排序,然后将其中最大的 m 个数字前移到序列前端。例如,当输入10个元素5 8 7 4 1 2 3 6 9 11时,按要求前移2个元素对应的输出结果为9 11 1 2 3 4 5 6 7 8。

5.将给定 n n <100)个元素的数组从小到大排序,输出排序结果的中位数(保留两位小数)。例如,当输入10个数据5 8 7 4 1 2 3 6 9 11时,输出的中位数为5.50。 EB6gdOz7d31HXUe6jRsLsNDvG6z4z1IT5Pn8/gA6G8kbRdSeXy5KIxoRtAoJuW7j

点击中间区域
呼出菜单
上一章
目录
下一章
×