先来显示一下它的过程 1.给一个数组 10,22,3,90,8,6 从小到大 快速排序 2.选取它的第一个值作为flag 其他数组以此做排序,比它大的放右边,比它小的放左边。[10, 22, 3, 90, 8, 6] => { 3, 8, 6 } 10 { 22, 90 } 3.上一步得到的数组是{ ...
分类:
编程语言 时间:
2019-09-02 12:16:49
阅读次数:
110
#region XML转dataset //str 是xml字符串 public static DataTable GetResultXMLToDataTable (string str,string Dt_Name) { DataSet xmlDs = new DataSet("ds"); Str... ...
分类:
其他好文 时间:
2019-09-02 12:14:56
阅读次数:
113
1.树套树 (1)树状数组套树状数组 前置: 树状数组如何支持区间加以及区间查询 维护一个差分数组,用来求一个位置的值,我们只需要把前缀和看作是一个矩形, 减去两数插值产生的贡献即可 1.P4514 上帝造题的七分钟 题意:支持矩形加某个数和矩形查询值。 考虑将每个点差分,当我们要将$(a,b),( ...
分类:
其他好文 时间:
2019-09-02 12:10:58
阅读次数:
120
需求 有这么两个数组 想要这样的结果 方案一 此方案为最原始方法,简单,但过于low 方案二 此方案使用了ES6中的map,简洁,但本质还是遍历,显得有些low 方案三 此方案使用了ES6+递归,显得高大上起来了。 方案四 此方案是方案三的加强版,它能接受多个数组映射成对象数组,威力无比! ...
分类:
编程语言 时间:
2019-09-02 11:36:42
阅读次数:
321
1.冒泡排序(以从小到大为例) 【分析】:冒泡排序的思想就是,两两进行比较,第一个元素和第二个元素进行比较,如果第一个元素比第二个元素大,则这两个元素交换位置,然后第二个元素和第三个元素进行比较,如果第二个元素比第三个元素大,交换位置,依次类推,知道到最后一个元素。在比较的时候,每进行一轮比较,就可 ...
分类:
编程语言 时间:
2019-09-02 00:15:54
阅读次数:
103
A cpp include using namespace std ; string s , t ; int num ; int main () { cin s t ; for(int i = 0 ; i using namespace std ; int n , m , ans = 0 ; int ...
分类:
其他好文 时间:
2019-09-01 23:51:18
阅读次数:
139
第一、装饰者模式定义 装饰者模式是在不改变原有对象的基础之上,将功能附加到对象上,提供了比继承更有弹性的替代方案(扩展原有对象的功能), 属于结构型模式。 第二、装饰者的应用场景 1、用于扩展一个类的功能或者给一个类添加附加职责 2、动态的给一个类添加一个功能,这些功能可以再动态的撤销 第三、装饰者 ...
分类:
其他好文 时间:
2019-09-01 23:35:01
阅读次数:
102
输入1234 输出4321 输入-1234 输出-4321 要求实现判断:输入数为-2^(32-1)~2^(32-1)-1,翻转数-2^(32-1)~2^(32-1)-1,在此范围输出翻转数,否则提示溢出. 实现:法一取余放入队列,取出队首乘倍数实现翻转 #include<iostream> #in ...
分类:
其他好文 时间:
2019-09-01 21:46:35
阅读次数:
105
传送门 明显状压dp 用dp[i][j][k]记录前i行最后一行状态编号是j且倒数第二行状态编号是k最多能放几个 所以我们先初始化dp[1]和dp[2] 其中dp[1][j][0]=bj[1][j] 因为第0行可以当做没选 dp[2][j][k]=bj[1][j]+bj[2][k] bj数组的意义同 ...
分类:
其他好文 时间:
2019-09-01 20:13:57
阅读次数:
100