美文网首页
基础排序算法-python实现

基础排序算法-python实现

作者: 阿凯被注册了 | 来源:发表于2021-08-05 14:46 被阅读0次

归并排序

# 归并排序
import sys
def merge_sort(arr):
    n = len(arr)
    if n <= 1:
        return arr
    mid = n//2
    
    L = merge_sort(arr[:mid])
    R = merge_sort(arr[mid:])
        
    n_l = len(L)
    n_r = len(R)
    L.append(sys.maxsize)
    R.append(sys.maxsize)
    
    i, j = 0, 0
    new_arr = []
    while i < n_l or j < n_r:
        if L[i] <= R[j]:
            new_arr.append(L[i])
            i += 1
        else:
            new_arr.append(R[j])
            j += 1
    return new_arr

快速排序

# 快速排序
def quick_sort(arr):
    n = len(arr)
    if n <= 1:
        return arr
    
    mask = arr.pop()
    L, R = [], []
    for i in range(len(arr)):
        if arr[i] < mask:
            L.append(arr[i])
        else:
            R.append(arr[i])
    return quick_sort(L)+[mask]+quick_sort(R)

相关文章

  • 排序算法详细代码实现

    算法分类 算法时间复杂度 选择排序 插入排序 C++实现 Python实现 冒泡排序 Python实现 归并排序 ...

  • 经典排序算法在python上的实现

    排序算法是算法中的基础,也是面试重点。现利用Python语言实现了经典的排序算法并且做出一定的总结。也是帮助自己记...

  • 算法-排序算法总结

    排序类型总结 1 排序算法基础实现 2 排序算法应用 2.1 基础排序 2.2 计数排序应用 2.3 快排应用 2...

  • 排序算法总结

    基础排序算法 基础排序算法相关接口和实现类 接口: 实现类(后续排序的父类): 1.选择排序 两层循环:内层循环进...

  • 基础排序算法-python实现

    归并排序 快速排序

  • python 排序算法

    文章概述 介绍各大常用经典的排序算法和效率,以及python实现常用算法(冒泡排序,选择排序,快速排序,插入排序)...

  • 第三章:高级排序算法

    归并排序算法(mergeSort) 算法思想:Python使用函数实现: 自底向上的归并排序算法 算法思想:Pyt...

  • 排序算法最强总结及其代码实现(Python/Java)

    前言 本文总结了常用的全部排序算法,内容包括: 排序算法的定义和思路 排序算法的代码实现:Python和Java,...

  • python实现计数排序(CountSort)

    python实现【计数排序】(CountSort) 算法原理及介绍 计数排序不是基于比较的排序算法,其核心在于将输...

  • python实现选择排序(SelectionSort)

    python实现【选择排序】 算法原理及介绍 选择排序(Selection-sort)是一种简单直观的排序算法。它...

网友评论

      本文标题:基础排序算法-python实现

      本文链接:https://www.haomeiwen.com/subject/uommvltx.html