- 30
- 0
- 约小于1千字
- 约 3页
- 2023-10-14 发布于河北
- 举报
使数组有序的最少交换次数
题目1:给出一个序列,只交换相邻两数,使得序列升序排列,求出最少交换次数。
思路:如果说只是交换相邻两个数字。那么就是这个序列的逆序数。
1.假设序列个数为n,我们先把最大的数换到最后,因为是相邻数字交换,所以把最大数交换到最后,需要交换的次数为最大数后的数字个数。
2.当完成最大数的交换后,可以将最大数从序列中划去不管了,即此时序列个数为n-1了,我们再在该序列中找到一个最大数,进行相同操作。
3.所以使整个序列有序的交换次数为,这个序列的所有逆序总数。
比如4,3,2,1。(4,3) (4,2) (4,1),有3个逆序,交换后 3,2,1,4(3,2) (3,1),有2个逆序,交换后2,1,3,4(2,1),有1个逆序,交换后1,2,3,4
题目2:给出一个序列,可交换任意两个数,使序列升序排列,求最少交换次数。
思路:与之前不同,之前是只能交换相邻两数。比如4,3,2,1,如果只交换相邻两数,最少交换次数为6。但如果是交换任意两数,最少交换次数就为2。
有序列5,4,3,2,1。共5个数。
nums [0] [1] [2] [3] [4]5 4 3 2 112按升序排列之后为
nums1 [0] [1] [2] [3] [4]1 2 3 4 512我们可以发现5,1虽然不在自己应该在的位置,但是如果把它们两个看成整体
您可能关注的文档
最近下载
- 超凡的一生(威廉·玛利安·伯兰罕传记)第一册.doc VIP
- Siemens西門子移动式C型臂X光系统CiosFlow用户手册.pdf
- 2026 年病房噪音管理改善护理质量改进质控 PPT.pptx VIP
- 中国国家标准 GB/T 32684-2025塑料 酚醛树脂 游离甲醛含量的测定.pdf
- 2025年杭州市广播电视台(融媒体中心)人员招聘笔试备考试题及答案解析.docx VIP
- 2025届浙江省交通投资集团有限公司管理培训生招聘笔试历年参考题库附带答案详解.docx
- 2026年杭州市余杭区广播电视台(融媒体中心)人员招聘笔试参考试题及答案解析.docx VIP
- 3.3《包装》教案 2026新北师大版数学五年级上册.docx
- Pioneer DJM-2000 Nexus中文用户说明书.pdf
- 2026 交投集团项目专员国企单位招聘考试参考题库 [含答案].docx
原创力文档

文档评论(0)