您好,登錄后才能下訂單哦!
這篇文章主要講解了“用Java怎么排序兩個數組”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“用Java怎么排序兩個數組”吧!
假設有 number,group,兩個數組,其中的元素都是數字,現在要對其排序排序的規則如下:
1.如果 group里面元素,存在于numbers了里面
2.要把出現在 group 內的數字 放在 number 的那些數字之前,注意排序
numbers = [8, 3 ,1, 2, 5,4,7,6] group = {2,3,5,7}
分析了下,應該是優先級的問題,這里使用了元組排序的方法:
numbers = [8, 3 ,1, 2, 5,4,7,6] group = {2,3,5,7} tmp = [] for x in numbers: if x in group: tmp.append((0, x)) else: tmp.append((1, x)) tmp.sort() print(list(map(lambda x:x[1], tmp)))
在網上看到了一個經典的代碼:
def sort_priority(values,group): def helper(x): if x in group: return (0, x) return (1, x) values.sort(key=helper) numbers = [8, 3 ,1, 2, 5,4,7,6] group = {2,3,5,7} sort_priority(numbers, group) print(numbers)
推薦使用第二個高階函數的方法
感謝各位的閱讀,以上就是“用Java怎么排序兩個數組”的內容了,經過本文的學習后,相信大家對用Java怎么排序兩個數組這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。