python不使用系统库中的排序方法判断一个数组是否是有序数组
2. 给定一组整数, 已知其每两个数都互不相同,判断这些数字是否能排成一个有序的数组?
例:li = [1,3,4,2] 是有续的 可以排序为li =[1,2,3,4]
li = [2,4,6,8] 是无续的 可以排序为li =[1,2,3,4]
(不允许使用系统库中的排序方法)
思路:先使用冒泡排序将数组进行排序整合,再使用下标索引检查是否满足序列要求
1 def one_func(_list): 2 n = len(_list) 3 conten = 0 4 for i in range(n - 1): 5 for i in range(n - 1 - i): 6 if _list[i] > _list[i + 1]: 7 _list[i], _list[i + 1] = _list[i + 1], _list[i] 8 conten += 1 9 if conten == 0: 10 continue 11 for j in range(len(_list) - 1): 12 if _list[j + 1] != _list[j] + 1: 13 res = '无序' 14 break 15 else: 16 res = '有序' 17 print(res) 18 19 20 if __name__ == '__main__': 21 li = [1, 4, 3, 2] 22 one_func(li) 23 print(li)
萧伯纳说:“你有一个苹果,我有一个苹果,彼此交换一下,我们彼此仍然是各有一个苹果;但是你有一种思,我有一种思想,彼此交换一下,才发现从不同角度看到的问题远比本身更深刻,所以多交流多沟通是我们提高自我能力的一种方式!!!
如果你有更好更简单的方法,请一定评论谢谢!!!
【推荐】博客园的心动:当一群程序员决定开源共建一个真诚相亲平台
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】Flutter适配HarmonyOS 5知识地图,实战解析+高频避坑指南
【推荐】开源 Linux 服务器运维管理面板 1Panel V2 版本正式发布
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步