首页 > 其他分享 >排序

排序

时间:2023-12-29 22:55:24浏览次数:30  
标签:arr temp int len ++ sizeof 排序

冒泡排序

#include <iostream>
using namespace std;

int main() {

    int arr[6] = { 0 };
    int len = sizeof(arr) / sizeof(int);
    
    for (int i = 0; i < len; i++) {
        cin >> arr[i];
    }
    
    // write your code here......
    for (int i = 0; i < len; i++)
    {
        for(int j = 0; j < len - 1 - i; j++)
        {
            if(arr[j] > arr[j + 1])
            {
                int temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }

    for (int i = 0; i < len; i++) {
        cout << arr[i] << " ";
    }

    return 0;
}

选择排序

#include <iostream>
using namespace std;

int main() {

    int arr[6] = { 0 };
    int len = sizeof(arr) / sizeof(int);
    
    for (int i = 0; i < len; i++) {
        cin >> arr[i];
    }
    
    // write your code here......
    for (int i = 0; i < len; i++)
    {
        for(int j = i + 1; j < len; j++)
        {
            if(arr[i] > arr[j])
            {
                int temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
            }
        }
    }

    for (int i = 0; i < len; i++) {
        cout << arr[i] << " ";
    }

    return 0;
}

标签:arr,temp,int,len,++,sizeof,排序
From: https://www.cnblogs.com/liubenben/p/17935816.html

相关文章

  • golang对map排序
    golang中map元素是随机无序的,所以在对maprange遍历的时候也是随机的,不像php中是按顺序。所以如果想按顺序取map中的值,可以采用以下方式:import("fmt""sort")funcmain(){m:=make(map[int]string)m[1]="a"m[2]="c"m[0]="b"......
  • 排序组件
    排序组件快速使用第一步:视图类需继承GenericAPIView或其子类#以图书类为例classBookView(ViewSetMixin,ListAPIView):queryset=Book.objects.all()serializer_class=BookSerializer 第二步:导入排序类相关组件#drf内置了排序类fromrest_framework.f......
  • 算法学习笔记七一归并排序
    目录什么是归并排序算法思想代码示例什么是归并排序归并排序(MergeSort)是一种经典的排序算法,它采用分治策略来将一个大问题分解成小问题,然后将小问题的结果合并起来得到最终的解决方案。归并排序的核心思想是将待排序的数组不断地二分,直到每个子数组的长度为1,然后再将相邻的子数......
  • 插入排序
    #include<bits/stdc++.h>usingnamespacestd;inta[10005];intmain(){ intn; cin>>n; srand(time(0));//随机数发生器 for(inti=1;i<=n;i++) a[i]=rand()%100;//产生0--99的随机数 for(inti=1;i<=n-1;i++) ......
  • 简单选择排序
    定义:对n个元素进行简单选择排序的基本方法是:第一趟从第1个元素开始,在n个元素中选出最小者,将其交换至第1个位置;第二趟从第2个元素开始,在剩下的n-1个元素中选出最小者,将其交换至第2个位置,以此类推,第i趟从n-i+1个元素中选出最小元素,将其交换至第i个位置,通过n-1趟选择,最终得到非递减排......
  • 算法学习笔记六一堆排序
    目录什么是堆排序算法思想代码示例什么是堆排序堆排序(HeapSort)是一种基于二叉堆数据结构的排序算法。它的主要思想是将待排序的序列构建成一个大顶堆(或小顶堆),然后反复从堆顶取出最大(或最小)元素,将剩余的元素重新调整为一个新的堆,再重复取出堆顶元素的过程,直到排序完成。算法思......
  • 堆排序
    步骤1.将数组构建成二叉树,n的左右孩子是2n+1、2n+2.2.将二叉树转化成堆(父节点大于等于两个孩子节点(大顶堆),父节点小于等于两个孩子节点(小顶堆)),时间复杂度O(n)。3.将堆顶和最后一个元素交换(此时堆顶就是最大值),事件复杂度O(logn)。4.按需要最大的n个值来执行(n-1)次步骤3。(时......
  • Mysql根据字段值的长度查找过滤,排序等
    Mysql根据字段值的长度查找过滤,排序等http://www.shanhubei.com/archives/5882.html1.Mysql根据字段的指定长度搜索过滤SELECT*FROMuserWHEREis_deleted=0ANDlength(name)>52.添加普通索引ALTERTABLE'table_name'ADDINDEXindex_name('column')3.在表中某一列......
  • 八大排序
    算法思想:每次生成一个样本用不同的排序测试并记录所用时间,一共十个样本,最后输出结果。主要/核心函数分析:堆排序:将带排序的序列构造成一个大顶堆,根据大顶堆的性质,当前堆的根节点(堆顶)就是序列中最大的元素,将堆顶元素和最后一个元素交换,然后将剩下的节点重新构造成一个大顶堆。归并......
  • 【归并排序】之C++实现
    描述归并排序是一种经典的排序算法,采用分治的思想。归并排序是一种基于分治思想的经典排序算法。它将待排序的数组不断地分成两个子数组,直到每个子数组只有一个元素。然后,对每个子数组进行归并排序,即不断地将两个有序的子数组合并成一个有序的数组。最终,所有子数组都合并成一个有......