常用算法
时间:2019-08-11
本文章向大家介绍常用算法,主要包括常用算法使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
快排
def quicksort(lis): if len(lis) < 2: return lis else: numb = lis[0] left_list = [i for i in lis[1:] if i <= numb] right_list = [i for i in lis[1:] if i > numb] final_list = quicksort(left_list) + [numb] + quicksort(right_list) return final_list quick_list = quicksort([6,3,5,87,69,52,4,16]) print(quick_list)
二分法查找
lis = [3, 4, 5, 6, 16, 52, 69, 87, 95] def search(lis,item): left = 0 right = len(lis)-1 while right-left >= 0: middle = (right+left) // 2 if item > lis[middle]: left = middle + 1 elif item < lis[middle]: right = middle -1 else : return middle
选择排序
def choice_sort(lis): min = 0 min_value = lis[0] for i in range(1,len(lis)): if min_value >= lis[i]: min = i min_value = lis[i] return min def app_list(list): new_list = [] for i in range(len(list)): new_list.append(list.pop(choice_sort(list))) return new_list print(app_list([6,3,5,87,69,52,4,16]))
冒泡排序
def maopao(lis): n = len(lis) - 1 while n : i = 0 while i < n: if lis[i] > lis[i+1]: lis[i],lis[i+1] = lis[i+1],lis[i] i += 1 n -= 1 return lis print(maopao([6,3,5,87,69,52,4,16]))
原文地址:https://www.cnblogs.com/gyc-tzx/p/11335068.html
- 由一条日志警告所做的调优分析(r3笔记第40天)
- 生产环境sql语句调优实战第十篇(r3笔记第39天)
- memory_target设置不当导致数据库无法启动的问题(r3笔记第38天)
- python利用结巴分词做新闻地图
- 数据库静默安装总结(r3笔记第58天)
- 用TensorFlow实现文本分析模型,做个聊天机器人
- 深度学习:用tensorflow建立线性回归模型
- 用python基于2015-2016年的NBA常规赛及季后赛的统计数据分析
- 数值信息的机器级存储
- ABAP和Java里关于DEFAULT(默认)机制的一些语言特性
- Golang语言社区--golang 进度下载文件
- Golang语言社区--Go语言基础第七节函数调用等
- Hyperledger也能实现Token代币
- 经典Java面试题收集(二)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 一文洞悉 OSI和TCP/IP模型,理通所有协议,再也不用似懂非懂了
- 图解https演变以及各种加密解密过程一篇就够!(通俗易懂白话文)
- vs code 创建vue模版
- WebAssembly如何演进成为“浏览器第二编程语言”?
- SAP ABAP和Java的动态代理实现
- SAP ABAP CGLIB(Code Generation Library)的模拟实现
- 如何监听SAP CRM BOR事件
- 如何避免SAP订单保存后生成的中间件CSA inbound queue
- Java和ABAP单例(singleton)设计模式的攻与防
- JUnit 注解@SuiteClasses的工作原理
- 使用SAP CRM Mock framework进行单元测试
- ABAP Debugging Script(调试器脚本)使用的一些实际例子
- MySQL 8.0新特性 — 事务性数据字典与原子DDL
- Python基础之面向对象-继承
- [源码分析]ArrayList和LinkedList如何实现的?我看你还有机会!