用python写个快排
快排过程比较简单就直接上代码了:
#!/usr/bin/python3 def quik_sort(L, left, right):
if left <= right:
key = L[left]
i = left
j = right
while i < j:
while i < j and key <= L[j]:
j -= 1
L[i] = L[j]
while i < j and L[i] <= key:
i += 1
L[j] = L[i]
L[i] = key
quik_sort(L, left, i - 1)
quik_sort(L, i + 1, right) a = list(map(int, input().split())) quik_sort(a, 0, len(a) - 1) for x in a:
print(x, end = ' ')
print()
注意:python 中的数字类型是不可变的,因此 x++ 并不会让 x 的值加 1
用python写个快排的更多相关文章
- python 冒泡和快排,不多说【无聊】
		
#-*-coding:utf8-*- import random a=[] b=[] def init_array(): for i in range(10000): v = random.randi ...
 - python 冒泡和快排,不多说
		
#-*-coding:utf8-*- import random a=[] b=[] def init_array(): for i in range(10000): v = random.randi ...
 - python 冒泡排序,快排
		
一.冒泡排序 1.1.冒泡的原理 比较相邻的元素.如果第一个比第二个大,就交换他们两个. 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的数. 针对所有的 ...
 - scala写算法-快排
		
快排算法很经典,今天用scala的函数式思维来整理一下并实现: def qsort(list: List[Int]):List[Int]=list match { case Nil=>Nil c ...
 - Python的快排应有的样子
		
快排算法  简单来说就是定一个位置然后,然后把比它小的数放左边,比他大的数放右边,这显然是一个递归的定义,根据这个思路很容易可以写出快排的代码  快排是我学ACM路上第一个让我记住的代码,印象很深 ...
 - 数据结构--排序--快排and冒泡(python)
		
听说大厂面试,限时两分钟写出来快排... 闲着没事,写了一下... def Partition(L,low,high): pivotkey = L[low] while low<high: wh ...
 - ACM/ICPC 之 快排+归并排序-记录顺序对(TSH OJ-LightHouse(灯塔))
		
TsingHua OJ 上不能使用<algorithm>头文件,因此需要手写快排(刚开始写的时候自己就出了很多问题....),另外本题需要在给横坐标排序后,需要记录纵坐标的顺序对的数量,因 ...
 - hdu1157 快排
		
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1157 大意:排序,取中间数. PS:1.自己实现了下快排函数,也可以使用#include<algor ...
 - 快排(python)
		
用python写了个快排,第一次发现python居然可以这么简洁. def quicksort(arr): if len(arr) <= 1: return arr pivot = arr[le ...
 
随机推荐
- 不使用sudo命令执行docker
			
不使用sudo命令执行docker 2015-09-11 11:03:05 王春生 8049 最后编辑:王春生 于 2015-09-11 12:18:30 简介:本篇文章介绍如何不使用sudo命 ...
 - 15 更多jQuery知识
			
jqueryUI 官网: https://jqueryui.com/ jqueryUI 中文网: http://www.jqueryui.org.cn/ jquery插件内容包含 官网demo: ht ...
 - maven项目引入外部jar包的三种方式
			
方式1:dependency 本地jar包 <dependency> <groupId>com.hope.cloud</groupId> <!--自定义--& ...
 - leetcode896
			
class Solution { public: bool isMonotonic(vector<int>& A) { ) { return true; } bool GetDif ...
 - UnityGUI Keynote
			
[UnityGUI Keynote] 1.GUI.Label控件可以用来显示texture: 更通用的作法是用label来显式texture. 2.GUI.Button可以显示texture.stri ...
 - java基础之多线程二:多线程实现方式
			
方式一: 继承Thread类. /* * main函数也叫主函数(也叫主线程), * 因为所有代码的执行都是从这里开始的. */ public static void main(String[] ar ...
 - Leetcode:Divide Two Integers分析和实现
			
题目要求我们用一个32位整数整除另外一个整数,但是不允许我们使用除法,乘法和取模运算. 有趣的问题,下面说一下我的思路: 首先,先给出两个正整数除法运算的过程.假设a为被除数,而b为除数.在计算机中无 ...
 - 【bzoj2190】[SDOI2008]仪仗队
			
2190: [SDOI2008]仪仗队 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 2638 Solved: 1674[Submit][Statu ...
 - PHP中static与self
			
一直搞不清楚,今天百度自己也测试了一下. <?php class A { public static function closure(){ echo __CLASS__."<b ...
 - hdu 1556 Color the ball(非线段树做法)
			
#include<stdio.h> #include<string.h> ]; int main() { int n,i; int a,b; while(scanf(" ...