剑指OFFER 数组中的逆序对 题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007 解题思考记录 初看这道题,马上想到了暴力解法,就是一个 ...
分类:
编程语言 时间:
2020-01-26 14:30:45
阅读次数:
66
package main import ( "fmt" "sort" "math/rand" ) //1.声明Hero结构体 type Hero struct{ Name string Age int } //2.声明一个Hero结构体切片类型 type HeroSlice []Hero //3.实 ...
分类:
编程语言 时间:
2020-01-26 10:27:51
阅读次数:
291
数组:同种数据类型的有序集合 数组在堆中创建 1.数组定义:初始化方式:声明+赋值:int[] a ;a={1,2,3,4,5} 声明+开辟空间 int[] a; a= new int[10]; 2.数组使用:a[i]i下标索引值 a.length; For Each增强 循环: 3.多维数组 in ...
分类:
编程语言 时间:
2020-01-24 18:42:38
阅读次数:
92
虽然桶排序很方便,但是它非常浪费空间!!!在多大范围就要开多大的空间,seriously?! 所以,推出了一种新的算法:冒泡排序! 其思想就是比较相邻的两个元素,如果与题目不符就交换 如上图就是利用冒泡每次都与相邻的比较,最后在最后一位的就是最大的数,依次排列完成想法! 比较相邻的元素,如果前一个比 ...
分类:
编程语言 时间:
2020-01-24 17:31:35
阅读次数:
96
好美的图论,真的 light up my life!题意: 给出一个只含有若干1,2,3的数列,我们可以两两交换数列元素;要求输出让这个数列不减的最小交换次数。 思路: 首先看起来很像冒泡.....然鹅要最少交换次数——显然不是模拟冒泡了。 开始用深搜来着,显然没办法剪枝,果断T掉。这个时候就要想一 ...
分类:
其他好文 时间:
2020-01-23 21:09:24
阅读次数:
59
快速排序是冒泡排序的改进版,也是最好的一种内排序,还涉及到分治和递归 基本思路: 1先从数列中取出一个数作为基准数(简单起见可以取第一个数) 2分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边(分区) 3再对左边区间重复第一步和第二步,直到各区间只有一个数(递归) 举例: 对 ...
分类:
编程语言 时间:
2020-01-23 14:06:37
阅读次数:
118
1.once修饰符的使用(once修饰符是让点击事件只能够执行一次)。
2.阻止冒泡事件,使用JS阻止和Vue修饰符stop阻止 ...
分类:
其他好文 时间:
2020-01-23 11:09:10
阅读次数:
80
1. 排序 1.1 交换式排序 package main import ( "fmt" ) //冒泡排序 func BubbleSort(arr *[5]int) { fmt.Println("排序前arr=", (*arr)) temp := 0 //临时变量(用于做交换) //冒泡排序..一步一 ...
分类:
编程语言 时间:
2020-01-23 09:25:18
阅读次数:
85
冒泡排序算法思想: 让数组中的两个相邻数字进行比较,数组中较大的值向下沉,值小的上浮,就类似于水中的气泡,较大的下沉,较小的上升,慢慢冒出来。简单的说就是数值大的会慢慢往前排,数据值小的会慢慢向后排,最终实现由小到达排列,最小的排在最前,最大的排到最后。冒泡排序图解: 算法执行前 算法执行后 冒泡算 ...
分类:
编程语言 时间:
2020-01-23 09:16:07
阅读次数:
72