python不使用系统库中的排序方法判断一个数组是否是有序数组
2. 给定一组整数, 已知其每两个数都互不相同,判断这些数字是否能排成一个有序的数组?
例:li = [1,3,4,2] 是有续的 可以排序为li =[1,2,3,4]
li = [2,4,6,8] 是无续的 可以排序为li =[1,2,3,4]
(不允许使用系统库中的排序方法)
思路:先使用冒泡排序将数组进行排序整合,再使用下标索引检查是否满足序列要求
def one_func(_list):
n = len(_list)
conten = 0
for i in range(n - 1):
for i in range(n - 1 - i):
if _list[i] > _list[i + 1]:
_list[i], _list[i + 1] = _list[i + 1], _list[i]
conten += 1
if conten == 0:
continue
for j in range(len(_list) - 1):
if _list[j + 1] != _list[j] + 1:
res = '无序'
break
else:
res = '有序'
print(res) if __name__ == '__main__':
li = [1, 4, 3, 2]
one_func(li)
print(li)
萧伯纳说:“你有一个苹果,我有一个苹果,彼此交换一下,我们彼此仍然是各有一个苹果;但是你有一种思,我有一种思想,彼此交换一下,才发现从不同角度看到的问题远比本身更深刻,所以多交流多沟通是我们提高自我能力的一种方式!!!
如果你有更好更简单的方法,请一定评论谢谢!!!
python不使用系统库中的排序方法判断一个数组是否是有序数组的更多相关文章
- Python关于去除字符串中空格的方法
Python关于去除字符串中空格的方法 在编写程序时我们经常会遇到需要将字符串中的空格去掉的情况,通常我们可以使用下面几种解决方法: 1.strip()方法:该方法只能把字符串头和尾的空格去掉,但是不 ...
- 【转载】 C#中使用CopyTo方法将List集合元素拷贝到数组Array中
在C#的List集合操作中,有时候需要将List元素对象拷贝存放到对应的数组Array中,此时就可以使用到List集合的CopyTo方法来实现,CopyTo方法是List集合的扩展方法,共有3个重载方 ...
- centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课
centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件.目录属性 shell数组简单用法 $( ) 和$ ...
- Python中的排序方法sort(),sorted(),argsort()等
python 列表排序方法sort.sorted技巧篇 转自https://www.cnblogs.com/whaben/p/6495702.html,学习参考. Python list内置sort( ...
- Python中经典排序方法
数据的排序是在解决实际问题时经常用到的步骤,也是数据结构的考点之一,下面介绍10种经典的排序方法. 首先,排序方法可以大体分为插入排序.选择排序.交换排序.归并排序和桶排序四大类,其中,插入排序又分为 ...
- 关于js中sort()排序方法
第一次写这个,算是记录自己的学习前端的一点点的历程吧.今天在做一个图片的随机排序遇到了一个问题,部分截图如下 我用的是json格式存储数组,想通过排序实现img数组中的内容升序或是降序发现用sort自 ...
- Python中的排序方法
1 list.sort list.sort(key=None, reverse=False) 该方法只能用于list.就地排序,原来的list被修改.key的用法见下文.reverse控制降序还是生序 ...
- 关于Arrays协助类中的排序方法
sort方法是优化的快速排序,不稳定. paralleSort是多线程排序,稳定,但是有长度限制.
- js中的排序方法
一.冒泡排序 var arr=[22,1,33,19,77]; function bubbleSort(arr){ for(var i=0;i<arr.length-1;i++){ for( ...
随机推荐
- CPU使用率过高问题定位
(1)top 命令 ->查询出CPU使用率最高的 PID编号. (2)top -H p PID编号 ->能查询出所有线程的CPU使用率的列表(线程编号也在PID列). (3)jstack ...
- spring项目配置双数据源读写分离
我们最早做新项目的时候一直想做数据库的读写分离与主从同步,由于一些原因一直没有去做这个事情,这次我们需要配置双数据源的起因是因为我们做了一个新项目用了另一个数据库,需要把这个数据库的数据显示到原来的后 ...
- Java开发笔记(一百一十三)HttpClient实现下载与上传
前面介绍了通过HttpClient实现HTTP接口的GET方式调用和POST方式调用,那么文件下载与文件上传又该如何操作呢?其实在HttpClient看来,文件下载属于特殊的GET调用,只不过应答报文 ...
- Delphi百度语音【支持语音识别和语音合成】
作者QQ:(648437169) 点击下载➨百度语音 语音识别api文档 语音合成api文档 [Delphi 百度语音]支持获取 Access Token.语音识别.语 ...
- Ubuntu 中linux 编译错误的(-)
1.错误 compress.c:14:58: fatal error: zlib.h: No such file or directorycompilation terminated. 解决:sudo ...
- xorm插入数据实例
package main import ( "fmt" _ "github.com/go-sql-driver/mysql" "github.com/ ...
- Spring Cloud--服务的发布与调用示例
[Provider] 引依赖: 启动类上添加注解: 配置文件: [Consumer] 引依赖: 加注解: 配置文件: 调用服务: 方式一(动态获取服务列表): Eureka默认30秒拉取一次服务列表. ...
- grep过滤日志
A -B -C 后面都跟阿拉伯数字 -A是显示匹配后和它后面的n行. -B是显示匹配行和它前面的n行. -C是匹配行和它前后各n行. 总体来说,-C覆盖面最大.用它保险些.哈哈.这3个开关都是关于匹配 ...
- dubbo源码阅读之服务导出
dubbo服务导出 常见的使用dubbo的方式就是通过spring配置文件进行配置.例如下面这样 <?xml version="1.0" encoding="UTF ...
- RAS非对称加密
加解密密钥不一致,一般私钥不公开,使用公钥加密,私钥解密,使用私钥加密,公钥可以解密. java代码 import javax.crypto.Cipher; import java.security. ...