中易网

随机产生三个数组,将前两个数组按由小到大顺序排序,然后将它们合并到第四个数组中(合并后的数组有序)

答案:2  悬赏:80  
解决时间 2021-02-13 03:42
随机产生三个数组,将前两个数组按由小到大顺序排序,然后将它们合并到第四个数组中(合并后的数组有序)
最佳答案
最少交换次数肯定是与87654321不对应的数的个数再减可以形成的环的个数(因为每个环的最后一个数都不用排序的,前面都排好了,最后一个自然就序),此数组有两个环,所以是5次。hint:环指的是例如上面数组中的165三个数虽然都不在自己应该在的位置,但他们占据了排好序后1,6,5应该占据的位置,所以可以抽象成一个环,环内换顺序就行了。同样3,2,4,8也是一个环,还有,对应好的7也可以看做是一个环,所以是8-1-1-1=5交换过程有很多:eg:交换38变成87162435交换16变成87612435交换15变成87652431交换24变成87654231交换23变成87654321注意是环内交换
全部回答
dim a(1 to 100) as integer dim b(1 to 100) as integer dim c(1 to 200) as integer for i=1 to 10 a(i)=int(rnd()*90+10) '随机产生a数组 b(i)=int(rnd()*90+10) '随机产生b数组 next i for i=1 to 100 c(i)=a(i) '合并a数组 next i for i=1 to 100 c(i+100)=b(i) '合并b数组 next i for i=200 to 2 step -1 '排序 for j=1 to i-1 if(c(j)>c(j+1)) then t=c(j) c(j)=c(j+1) c(j+1)=t end if next j next i 所有的输出我都没写 自己来吧 呵呵
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
贷款购买长安cx20说要首付36000元,请问哪些
上山塘地址在什么地方,想过去办事
驾驶证体检表能当天办理当天拿吗
水景灯通常采用什么电线?橡套线可以吗?
鑫鑫火锅烧烤地址在哪,我要去那里办事
中科院力学研究所,北航力学研究所哪个好
修改病句“他们要用知识的力量改善村庄的穷面
仙都楼在哪里啊,我有事要去这个地方
地锉巨龙大道站有什么公交车
靓泽发艺专业染烫设计地址在哪,我要去那里办
电脑看斗鱼、战旗直播视频时,画面卡住了,弹
鸿基二手车行这个地址在什么地方,我要处理点
极速奔跑者怎么设置手柄
老板第一天上班就让我写报告是对我的信任吗?
正心馆合气道(林和西店)地址在什么地方,想过
推荐资讯
eclipse进行远程调试的时候的出现Failed to c
吊滩地址在什么地方,想过去办事
手机摔破屏幕,在屏幕上半部分某处按了没反映
楼梯踏步铺台阶大理石板怎样计算
泡沫铝罐有没有国家标准?
黑红绿衣头顶花,姐妹多了闹出嫁,嫁到江河水
精英家教中心地址在什么地方,想过去办事
乞巧乞巧的最后两句是什么意思
QQ华夏各挑战勇者各地图怪的坐标《详细》
如何看穿一个男人的心
省呗可靠吗
2018届本省理科437能进贵校么?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?