HDU 1394 Minimum Inversion Number (数据结构-线段树)
题目大意:
求逆序数。也就是给你一个序列,每次求逆序数,然再把第一个数放到这个序列的末尾,构成新的序列。问你这n个序列的最小的逆序数。
解题思路:
1、对于每个序列,其原来的逆序数记为 pre , 如果当前把该序列 第一个数 a[0] 移动到尾部,那么新序列的逆序数为 pre-a[i]+(n-a[i]-1)
因为序列中比a[i]大的数有 n-a[i]-1 个,比a[i]小的有 a[i]个。
因此只需求出...
分类:
其他好文 时间:
2014-05-12 07:07:01
阅读次数:
301
import java.util.Stack;
import java.util.Scanner;
public class Evaluate {
public static void main(String[] args) {
Stack ops=new Stack();
Stack vals=new Stack();
Scanner cin=new Scanner(Syste...
分类:
其他好文 时间:
2014-05-12 06:23:04
阅读次数:
336
import java.util.*;
//泛型定容栈
//泛型:类型参数化,便于处理不同类型的数据
public class FixedCapacityStack {
private Item[] a;
private int N;
public FixedCapacityStack(int cap){
// java中不允许直接创建泛型数组,此处用类型转换来实现
// 这样写...
分类:
其他好文 时间:
2014-05-11 15:05:07
阅读次数:
233
import java.util.Scanner;
public class FixedCapacityStackOfStrings {
private String[] a;
private int N;
public FixedCapacityStackOfStrings(int cap){
a=new String[cap];
}
public boolean isEmpty...
分类:
其他好文 时间:
2014-05-11 14:09:33
阅读次数:
251
import java.util.*;
// 下压栈(LIFO) 能动态调整数组大小的实现...
分类:
其他好文 时间:
2014-05-11 13:56:11
阅读次数:
238
对JAVA的集合的理解是想对于数组
数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型)
JAVA集合可以存储和操作数目不固定的一组数据。
所有的JAVA集合都位于 java.util包中!
JAVA集合只能存放引用类型的的数据,不能存放基本数据类型.
JAVA集合主要分为三种类型:
Set(集)
List(列表)
Map(映...
分类:
编程语言 时间:
2014-05-11 13:24:28
阅读次数:
406
import java.util.Iterator;
import java.util.Scanner;
public class Stack implements Iterable {
private Node first;// 栈顶
private int N;// 元素数量
// 定义结点的嵌套类
private class Node{
Item item;
Node nex...
分类:
其他好文 时间:
2014-05-11 13:20:22
阅读次数:
257
一、序言
一个简单的string 容器到底是如何实现的?
本文给出了 String 的三种从易到难的实现,涉及了 reference counting, copy on write 的技术。
二、第一个实现
我们设计的string类里面包含一个char* 的指针, 通过指针的管理,来实现string的基本功能。
废话不多说了,直接上代码:
{CSDN:CODE:...
分类:
其他好文 时间:
2014-05-11 06:58:16
阅读次数:
311
起因ledisdb是一个参考ssdb,采用go实现,底层基于leveldb,类似redis的高性能nosql数据库,提供了kv,list,hash以及zset数据结构的支持。我们现在的应用极大的依赖redis,但随着我们用户量越来越大,redis的内存越来越不够用,并且replication可能还会导致超时问题。虽然后续我们可以通过添加多台机器来解决,但是在现有机器配置下面,我们仍希望单台机器承载...
分类:
数据库 时间:
2014-05-11 05:39:12
阅读次数:
522
Key-Value存储作为NoSQL存储的一种常见方式,提供了比SQL数据库更好的可扩展性和读写性能。比如当前开源最热门的Memcached和Redis;淘宝的Tair、腾讯的Cmem、Amazon的Dynamo等等,无论是做缓存还是持久存储,均使用内存作为主要存储介质,故内存管理策略就显得尤为重要了,是影响性能的重要因素。
这里从源代码层面对Memcached、Redis和UDC(腾讯以前用的一套KV持久化存储系统)的内存管理策略进行分析,3者的内存管理策略各不相同,其他KV系统也和这3种方法大同小异了。...
分类:
其他好文 时间:
2014-05-11 04:48:13
阅读次数:
387