zoukankan      html  css  js  c++  java
  • 排序的本质是什么 冒泡排序 bubble sort

    import random


    def getRandomNums(min=4, max=20):
    n = random.randint(min, max)
    arr = [random.randint(1, n) for _ in range(n)]
    return arr


    def bubble_sort(arr):
    '''
    排序的本质是什么?
    找出谁大谁小。
    先后找出最大的、次最大的、次次最大的、、、、、、

    元素个数:n
    找的次数:times
    每次的两两比较的比较对象元组:第1个元素和第2个元素(1,2),(1,2),...,(n-times-1,n-times)
    :param arr:
    :return:
    '''
    n = len(arr)
    # python range() [)左闭右开
    for times in range(1, n, 1):
    for ii in range(0, n - times, 1):
    left, right = arr[ii], arr[ii + 1]
    if left > right:
    arr[ii + 1], arr[ii] = left, right
    return arr

    [4,5,-6,6]  正数放左边,负数右边

    #include <stdio.h>
    int main()
    {
        int arr[] = {7};
        int len = sizeof(arr) / sizeof(int);
        int pl[len];
        int i;
        int lt = 0;
        int rt = len - 1;
        for (i = 0; i < len; i++)
        {
            int tmp = arr[i];
            if (tmp > 0)
            {
                pl[lt] = tmp;
                lt += 1;
            }
            else
            {
                pl[rt] = tmp;
                rt -= 1;
            }
        }
        return 0;
    }
    

      

  • 相关阅读:
    Spring 源码学习
    Feign Client 原理和使用
    算法基础:排序算法看这一篇就够了
    Spring 源码学习2
    Spring 源码学习
    最优包裹组合-贪心算法
    @Transactional 事务的底层原理
    Mysql索引扫盲总结
    snowflake原理解析
    分布式ID总结
  • 原文地址:https://www.cnblogs.com/rsapaper/p/10283391.html
Copyright © 2011-2022 走看看