- 归并排序的学习
归并排序思想:归并的本质也是分治,不过不同于快速排序,它在将大问题分成小问题之后最后需要将小问题合并成最终的排序结果。#include<iostream>usingnamespacestd;constintN=1e6+10;intn;intq[N],tmp[N];voidmerge_sort(intq[],intl,intr){if(l>=r......
- 堆排序(下标0/1)
0 void SiftHeap(int r[], int k, int n) { int i = k; int j = 2 * i + 1; // 置i为要筛的结点,j为i的左孩子 while (j < n) { // 筛选还没有进行到叶子 if (j + 1 < n && r[j] < r[j + 1]) j++......
- 快速排序的学习
快速排序思想:不同于归并,快速排序的本质是分治,且一直分,分到最小。即通过递归选中间值x将待排序的内容分为左右两个待排序区域。一直递归排序,将左边的都变成小于等于q[x]的,右边的值都大于等于q[x]。一直分分分到最小————即左右只有一个值。代码如下#include<iostream>using......
- 用选择法对10个整数排序(降序)。
大学作业,运行不了就把每个for循环里面的int提出来,括号内保留i就行了!!!!!多的我不说了,代码放地下自取自拿,某人在这里求个赞,陆续会更新实验3-5,所有作业都有复制版和详解版,记得关注,谢谢各位:自取版:#include<stdio.h>intmain(){ inta[10]; inti,j,temp,max; ......
- 【初阶数据结构】顺序表
文章目录前言一、线性表二、顺序表1.概念与结构2.分类三、顺序表的实现1.初始化2.销毁3.打印4.增容5.尾插6.头插7.尾删8.头删9.查找指定位置数据10.指定位置之前插入数据11.删除指定位置数据前言本节内容开启新篇章,将为大家带来数据结构,数据结构分为两个阶段一个是初阶......
- 数据结构:复杂度
......
- 初级数据结构——邻接矩阵
目录前言一、定义与表示二、特点与性质三、操作与应用四、代码模版五、经典例题[1.——LCP07.传递信息](https://leetcode.cn/problems/chuan-di-xin-xi/description/)代码题解[2.——547.省份数量](https://leetcode.cn/problems/number-of-provinces/description/)......
- 数据结构——栈和队列
......
- 快速排序算法
快速排序(QuickSort)是由英国计算机科学家TonyHoare在1960年提出的排序算法。它是一种基于分治法的排序算法,通常在平均情况下具有很高的性能,时间复杂度为O(nlogn)O(n\logn),尽管最坏情况下时间复杂度为O(n2)O(n^2),但通过一些优化方法可以避免这种情况。快速排序的基本......
- 写一个方法实现“插入排序算法”,并解释下时间复杂度和空间复杂度
/***插入排序算法*@param{Array<number>}arr待排序的数组*@returns{Array<number>}排序后的数组*/functioninsertionSort(arr){constn=arr.length;if(n<=1){returnarr;//空数组或只有一个元素的数组无需排序}for(leti=1;i<......