【leetcode_easy_array】1122. Relative Sort Array
problem
solution1:
code
哈希表
solution2:
code:
思路

解题思路: 首先解读题意。arr2的元素都是独一无二的,并且都所属于arr1。arr1中可能包含重复元素。目标是将arr1中的元素重新排序,排序规则是1)属于arr2的元素(part1)排序先于arr1其余不属于arr2的元素(part2);2)part1中arr1元素的顺序与arr2的元素顺序保持一致,part2的元素按照升序排列。 然后考虑边界情况,arr2元素为空时,直接返回排序的arr1;通常情况,根据arr2对arr1进行遍历,若arr1元素arr1[j]等于当前扫描的arr2的元素arr2[i],则与数组元素置换,num_idx记录已置换排好序的元素个数,即排序好的arr1的索引。遍历之后,对arr1剩余元素arr1[num_idx:end]进行排序。解法复杂度为O(m*n+n*log n),m为arr2的长度,n为arr1的数组长度。
参考
1. leetcode_1122. Relative Sort Array;
2. LeetCode | 1122. Relative Sort Array;
完
各美其美,美美与共,不和他人作比较,不对他人有期待,不批判他人,不钻牛角尖。
心正意诚,做自己该做的事情,做自己喜欢做的事情,安静做一枚有思想的技术媛。
版权声明,转载请注明出处:https://www.cnblogs.com/happyamyhope/
心正意诚,做自己该做的事情,做自己喜欢做的事情,安静做一枚有思想的技术媛。
版权声明,转载请注明出处:https://www.cnblogs.com/happyamyhope/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步