排序算法-时间复杂度
我会一直
填
展开
-
【数据结构】堆排序-大顶堆、小顶堆、堆排序
堆排序-大顶堆、小顶堆、堆排序大顶堆小顶堆堆排序堆排序代码实现大顶堆完全二叉树父节点>左右子节点arr[n]>arr[2n+1]&&arr[2n+2]升序用大顶堆小顶堆完全二叉树父节点<左右子节点arr[n]<arr[2n+1]&&arr[2n+2]降序用小顶堆堆排序1.假设给定无序序列结构如下...原创 2020-04-07 03:45:58 · 1700 阅读 · 0 评论 -
【数据结构】查找算法-顺序、二分、插值、斐波那契
查找算法顺序(线性)查找二分查找插值查找斐波那契查找顺序(线性)查找package com.fly.search;/** * @Title: 顺序查找 * @author: Fly * @date: 2020/4/4 - 0:59 */public class SeqSearch { public static void main(String[] args) { ...原创 2020-04-05 18:23:13 · 113 阅读 · 0 评论 -
【数据结构】排序算法-快速排序和归并排序和基数排序
排序算法-快速排序和归并排序和基数排序快速排序归并排序基数排序常用算法的比对快速排序改进冒泡排序+递归int[] arr={-9,78,0,23,-567,70,-90}以23为中间轴pivot把比23小的放左边,比23大的放右边index为(left+right)/2的数两边按原来的思路递归package com.fly.sort;import java.util.Arr...原创 2020-04-04 00:53:30 · 213 阅读 · 0 评论 -
【数据结构】排序算法-插入排序&希尔排序
排序算法-插入排序基本思想:类似玩扑克牌开始序牌时,新安排的无序牌与最后一个牌对比倒数第二张牌>新安排>最后一个牌新安排倒数第三张牌>新安排>倒数第二张牌>最后一个牌原始数组:{110,34,119,1}package com.fly.o;import java.util.Arrays;/** * @Title: 插入排序 * @aut...原创 2020-04-01 20:34:26 · 107 阅读 · 0 评论 -
【数据结构】排序算法-选择排序(Select Sorting)
排序算法-选择排序(Select Sorting排序速度为什么比冒泡排序快基本思想:拿arr[0]先和每个元素比,比自己小的话就交换,确定第一个最小值;拿arr[1]和每个元素比,比自己小的话就交换,确定第二个最小值;以此类推.使用逐步推导的方式,讲解选择排序package com.fly.o;import java.util.Arrays;/** * @...原创 2020-03-29 14:40:05 · 173 阅读 · 0 评论 -
【数据结构】排序算法-冒泡排序(Bubble Sort)
排序算法-冒泡排序(Bubble Sort冒泡排序(Bubble Sort)代码实现冒泡排序(Bubble Sort)有两个指针如果相邻的元素逆序就交换每一趟都确定一个最大值原始数组 : 3,9,-1,20,10第?趟n指针数组i第一趟13,93,9,-1,20,10指针对比3和9-29,-13,-1,9,20,10指针对比9和-1...原创 2020-03-29 13:14:00 · 207 阅读 · 0 评论 -
【数据结构】排序算法-时间复杂度
【数据结构】排序算法算法的时间复杂度T(n)T(n)怎么计算忽略常数项忽略低次项n^2^可以忽略系数O(n):渐进时间复杂度常见的时间复杂度常数阶O(1)对数阶O(log2n\log_2 nlog2n)算法的时间复杂度T(n)T(n)怎么计算比如:计算1-100的所有数字之和,我们设计了两种算法:1.使用for循环计算int total=0;int end=100;//使用for...原创 2020-03-29 09:08:40 · 1146 阅读 · 0 评论