排序 分类 外排序:由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行(k路归并) 内排序:所有操作再内存就可以完成 比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。 非比较类排序:不通过比较来决定元素间的 ...
分类:
编程语言 时间:
2021-06-08 22:35:45
阅读次数:
0
算法——排序——选择排序(1)——简单选择排序 什么是简单选择排序 简单来说就是每次遍历数组将最大的或最小的选择出来后移动到一个地方,然后再把剩下的继续选最大或最小的再移动,移动到最后一个就不用移动了,因为前面已经排好序了。 也可以简单的理解为,每次选出一个最大或者最小的,然后再从剩下的选最大或者最 ...
分类:
编程语言 时间:
2021-05-25 18:02:39
阅读次数:
0
排序算法 冒泡排序算法 /// <summary> /// 冒泡排序 /// </summary> /// <param name="arr"></param> public void BubbleSort() { int temp; for (int i = upper; i >= 1; i--) ...
分类:
编程语言 时间:
2021-05-24 16:46:52
阅读次数:
0
班级 机器学习实验-计算机18级 实验内容 K-近邻算法及应用 姓名 程王宇 学号 3180701339 ##【实验目的】 1、理解K-近邻算法原理,能实现算法K近邻算法; 2、掌握常见的距离度量方法; 3、掌握K近邻树实现算法; 4、针对特定应用场景及数据,能应用K近邻解决实际问题。 ##【实验内 ...
分类:
编程语言 时间:
2021-05-24 15:46:26
阅读次数:
0
十大经典排序算法 排序算法可以分为内部排序和外部排序,内部排序时数据记录在内存中进行排序,而外部排序时因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等 ...
分类:
编程语言 时间:
2021-04-27 15:03:51
阅读次数:
0
先放一段冒泡排序的代码 public class Test { public void bubbleSort(int[] a){ if (a.length<=1){return;} for (int i = 0; i < a.length; i++) { boolean flag = false; ...
分类:
编程语言 时间:
2020-12-14 13:21:56
阅读次数:
4
架构师之路年终总结(八)-算法篇写了几万字关于算法与数据结构的文章,稍作总结,希望对大家有帮助。画外音:都是面试官最喜欢问的,必须要掌握。1.TopK问题六种方法求解TopK问题,阅读量超高。《拜托,面试别再问我TopK了!》全局排序、局部排序,堆,分治法,减治法,随机选择等六种方法,时间复杂度从平方到线性,彻底搞懂TopK。画外音:分治法,减治法的本质是什么?2.数1问题四种方法求解数1问题,阅
分类:
编程语言 时间:
2020-11-16 13:54:58
阅读次数:
14
本文源码:GitHub·点这里||GitEE·点这里一、递归算法递归就是方法自己调用自己,每次调用时传入不同的变量,可以让代码变得简洁。递归算法在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法,递归式方法可以被用于解决很多的计算机科学问题,因此它是计算机科学中十分重要的一个概念。基础案例:通过递归打印数据;publicclassM01_Recursion{publicstat
分类:
编程语言 时间:
2020-09-23 23:54:01
阅读次数:
37
7.1 排序算法的介绍排序也称排序算法(SortAlgorithm),排序是将 一组数据,依 指定的顺序进行 排列的过程。7.2 排序的分类:1) 内部排序:指将需要处理的所有数据都加载到 内部存储器( 内存)中进行排序。2) 外部排序法:数据量过大,无法全部加载到内存中,需要借助 外部存储( 文件 ...
分类:
编程语言 时间:
2020-09-17 18:14:23
阅读次数:
33
排序 选择排序、快速排序、希尔排序、堆排序不是稳定的排序算法,而冒泡排序、插入排序、归并排序和基数排序是稳定的排序算法 (稳定的排序是指排序前后相同的两个数的相对位置是一致的) 一.冒泡排序 1.算法描述 比较相邻元素,如果第一个比第二个大,交换位置,这样每经过一趟就冒出一个最大的 2.代码实现 p ...
分类:
编程语言 时间:
2020-08-19 19:14:17
阅读次数:
66