@Test public void demo1() {int[] arr = { 1, 2, 3, 4, 5 }; for (int start = 0, end = arr.length - 1; start < end; start++, end--) { int temp = arr[star ...
分类:
编程语言 时间:
2017-04-21 16:33:08
阅读次数:
151
这周web作业,做个小小的拼图游戏,想到了随机打乱的拼图能否还原的问题,参考了博文逆序数奇偶性判断。 自己理解如下,对于一个拼图原来的情况可以简化如下:1 2 34 5 67 8 0以行优先原则排列为123456780交换0与其他元素x的位置:B1 S1 x B2 S2 0其中B1为原来x之前比x大 ...
分类:
其他好文 时间:
2017-04-16 22:49:29
阅读次数:
1007
作者:童哲链接:https://www.zhihu.com/question/36966326/answer/70687817来源:知乎 行列式这个“怪物”定义初看很奇怪,一堆逆序数什么的让人不免觉得恐惧,但其实它是有实际得不能更实际的物理意义的,理解只需要三步。这酸爽~1,行列式是针对一个的矩阵而 ...
分类:
其他好文 时间:
2017-04-16 16:24:18
阅读次数:
352
http://poj.org/problem?id=1804 ...
分类:
其他好文 时间:
2017-04-04 16:12:07
阅读次数:
218
一个热爱技术的菜鸟...用点滴的积累铸就明日的达人 题目 给定一个字符串,求解它的逆序数,字符串长度最大为1024,字母限定为{A,B,C,D} 例如: 输入:“DCBAB” 输出:8 解释:逆序串 [DC],[DB],[DA],[DB],[CB],[CA],[CB],[BA] 的总个数为逆序数 思 ...
分类:
其他好文 时间:
2017-04-04 11:40:41
阅读次数:
215
判断无解的情况(写完七种境界才发现有直接判断无解的方法): 一个状态表示成一维的形式,求出除0之外所有数字的逆序数之和,也就是每个数字前面比它大的数字的个数的和,称为这个状态的逆序。 若两个状态的逆序奇偶性相同,则可相互到达,否则不可相互到达。 POJ提交记录(从下往上依次为第1,2,3,4,5,6 ...
分类:
其他好文 时间:
2017-03-23 10:39:43
阅读次数:
177
今天继续学了算法,首先是一个计算数组中的逆序数的算法。 通常,很容易想到的计算办法就是运用两个for循环遍历比较整个数组,当某个数字的下标较大,而值却小于小标比它小的某个位置上的值时,逆序数+1,但是此种算法复杂度较高,随着输入数据规模的增大效率会快速下降(即输入的数组变大了),具体的复杂度计算方法 ...
分类:
编程语言 时间:
2017-03-22 01:03:24
阅读次数:
750
1.锁定数组的长度(让数组的长度变成只读)。 2.Array.join()方法,返回一个字符串 3.Array.reverse()方法,返回逆序数组 4.Array.sort()方法,返回排序后的数组。如果数组包含undefined,会被排到数组的尾部。如果不带参数的调用sort(),数组元素以字母 ...
分类:
编程语言 时间:
2017-03-08 13:28:27
阅读次数:
192
先介绍一下树状数组。什么是树状数组呢?树状数组(Binary Indexed Tree(BIT), Fenwick Tree)是一个查询和修改复杂度都为log(n)的数据结构。主要用于查询任意两位之间的所有元素之和,但是每次只能修改一个元素的值;经过简单修改可以在log(n)的复杂度下进行范围修改, ...
分类:
编程语言 时间:
2017-02-19 20:16:46
阅读次数:
273