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)推荐使用第二个高阶函数的方法
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
分享题目:java数组排序-创新互联
分享地址:http://www.frzxz.com/article/docpjc.html
其他资讯
- 警猫眼设置,警猫眼这个软件请问大家摄像端的ID未获取怎么回事啊两个终端不
- angular.js+require.js如何构建模块化单页面应用
- HashTable、HashSet和Dictionary的区别有哪些
- java代码模拟登陆 java 模拟登陆
- wamp怎么绑定域名 wordpress如何绑定域名
- html5效果图 html5效果图素材网
- androidtv android tv下载
- 网络故障排查的九个常用命令?(Linux系统中netstat命令如何使用)
- 请问怎样上传视频到公司网站?(视频如何放在公司网站,如何建立和设计公司网站)
- 电脑开机显示正在升级怎么回事?(打开慢有时候打开或者强制刷新就会出现以上提示)

