单链表的基本操作: 1、单链表反转 2、链表中环的检测 3、两个有序链表的合并 4、删除倒数第K个结点 5、求链表的中间结点 编写链表代码的注意事项: 1、如果链表为空时,代码是否能正常工作? 2、如果链表只包含一个结点时,代码是否能正常工作? 3、如果链表只包含两个结点时,代码是否能正常工作? 4 ...
分类:
其他好文 时间:
2020-04-06 17:15:56
阅读次数:
120
快速排序(交换范式) 快速排序代码基本上背一遍就可以了,注意 =和= mid_value) high ; a[low] = a[high]; while(low i; j ) { if (a[j 1] a[j]) { int tmp = a[j 1]; a[j 1] = a[j]; a[j] = t ...
分类:
编程语言 时间:
2020-04-01 01:18:21
阅读次数:
80
//归并排序 class ArrayList { constructor () { this.array = [] } insert (data) { return this.array.push(data) } mergeSort () { this.array = this.merge_1(th ...
分类:
编程语言 时间:
2020-02-26 20:45:42
阅读次数:
79
#define _CRT_SECURE_NO_WARNINGS#include<iostream>using namespace std;void mergeSort(int a[], int s, int e, int temp[]) { if (s < e) { int m = s + (e - ...
分类:
编程语言 时间:
2020-02-25 20:27:18
阅读次数:
75
归并排序是一种非常经典的分治算法,也是非常精美的算法。学习归并排序,对于理解分治法思想、提高算法思维能力十分有帮助。 ...
分类:
编程语言 时间:
2020-02-19 13:15:19
阅读次数:
83
How would you implement mergesort without using recursion? The idea of iterative mergesort is to start from N sorted sublists of length 1, and each ti ...
分类:
其他好文 时间:
2020-02-03 13:35:41
阅读次数:
117
归并排序(英语:Merge sort,或mergesort),是创建在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 分治法: 分割:递归地把当前序列平均分割成两半。 集成:在保持元素顺序的同时将上一步得到的子序列集成到一起(归并)。 ...
分类:
编程语言 时间:
2020-01-31 14:00:22
阅读次数:
75
博主最近在恶补基础知识,算法必然是必不可少的,那么就从经典排序算法开始吧!(图源网络,侵删),没有列出全部,因为在期末考试囧 代码太多,就只显示了最关键的部分 1. 冒泡排序 实现思路: (1)比较前后相邻的二个数据,如果前面数据大于后面的数据,就将这二个数据交换。 (2)这样对数组的第0个数据到N ...
分类:
编程语言 时间:
2020-01-14 13:13:53
阅读次数:
61
归并排序属于稳定排序,时间复杂度为O(nlogn) 思路:采用分治策略,将问题分成一些小的问题然后递归求解,治的部分是将分的部分得到的答案和在一起,即为分而治之 过程:这里用图来显示比较直观 import java.util.Arrays; public class MergeSort { publ ...
分类:
编程语言 时间:
2019-12-31 10:38:40
阅读次数:
63
$arr=array(19,7,5,1,3,10); $tmp = mergeSort($arr); print_r($tmp); function mergeSort($arr){ $start = 0; $end = count($arr)-1; if($end == 0){ return $a ...
分类:
编程语言 时间:
2019-12-24 09:57:57
阅读次数:
152