设A[1…n]是一个包含n个不同数的数组。如果在iA[j],则(i,j)就称为A中的一个逆序对(inversion)【《算法导论》2-4】
现给出一个数列,求该数列中的逆序对(逆序对 )
利用归并排序的方法我们给出如下算法://
// main.cpp
// CpushTest
//
// Created by Ellen on 14-5-11.
// Copyright (c...
分类:
其他好文 时间:
2014-05-13 22:53:12
阅读次数:
340
给了你n个村庄把,然后m条路径,q个询问,问你两个点之间的最短距离
分析:由于按照题意来说本图是没有环的,所以求a,b的最近公共祖先 到他们的各自的距离之和就是 那个他们的最短路啦,用的是tarjan来做的,我的方法定义了一个dis数组来随时记录路径的长度,其它大神各有自己的神奇之法
#include
#include
#include
#include
#include
#inclu...
分类:
其他好文 时间:
2014-05-13 07:48:39
阅读次数:
303
堆排序分为两个阶段:1、将原始数组组装成一个堆;2、从堆顶逐个取出元素并得到排序结果。(如果是最大堆,则是重复删除最大元素,然后从后往前放入到数组。)
用sink()只需扫描数组中的一半元素。
堆排序可以不需要额外的空间,最优的利用空间和时间。可用于嵌入式系统。缺点:无法利用缓存,影响缓存命中。...
分类:
其他好文 时间:
2014-05-13 05:43:27
阅读次数:
207
此脚本可以做一个定时的检测,超出设定的值,即往邮箱发送警告脚本用到bc,sendmail,163邮箱,yuminstallbc#!/bin/bash
#SystemMonitoringScript
while[1]
do
#本机需开启postfix或sendmail服务。
#报警邮件地址设置
MAILFROM=root@localhost
MAILTO=your_mail@163.com
#设置..
分类:
系统相关 时间:
2014-05-13 05:05:29
阅读次数:
649
一、什么是I/OI/O设备是计算机核心部件和外围设备进行交互的通道,因此I/O是一个统称。但这里所说的I/O与计算机的硬件设备没有太大关系,它是用来实现应用程序的I/O重定向。通常应用程序需要从外部用户获取数据,也需要将运行结果反馈给外部用户,因此程序本身要有输入输出功能..
分类:
其他好文 时间:
2014-05-13 04:16:13
阅读次数:
361
Linux0.11,内存最多支持16M,其中0-1M是内核去,实际内核使用是从0-640k,从640k-1M的区域,分别是显存,bios区域,高速缓冲区,1-16M是是主内存区域。在内存内核区域当中,从0开始,首先存放的是页目录表,占4kb,之后的3个是页表,每个4kb,每个页表包含一个数组,每个数组共..
分类:
系统相关 时间:
2014-05-13 03:39:16
阅读次数:
419
集合基础知识数组:长度固定,可存基本数据和对象。集合:只能放对象,不固定。容器也有共性,不断抽取成一个体系,集合框架。参阅顶层创建底层。顶层是collection。collection里有两个常见的接口,List和Set。常见集合有Arraylist,linkedlist,vector,hashSetTreeSet.为什么..
分类:
其他好文 时间:
2014-05-13 03:35:07
阅读次数:
371
1. mongodb创建数据库和集合
mongodb数据库和集合的创建是隐式的。
意思是说不用单独写create database 语句。
直接使用use关键词即可。
在bin/mongo shell下运行:...
分类:
数据库 时间:
2014-05-13 00:28:12
阅读次数:
445
在字符串中,寻找第一个只出现一次的字符,如str=“abddgdbacdd", 结果是c
三种方法:
1. 使用字符字典数组,每个元素是一个结构体,第一个字段记录字符出现的次数,第二个字段记录该字符在字符串中第一次出现的位置,
先遍历一遍字符串,对字符字典数组赋值,然后遍历一遍字符字典数组,找到第一个字段为1,且位置最小的字符即为需要寻找的字符。如下:
struct node{
int...
分类:
其他好文 时间:
2014-05-12 23:39:49
阅读次数:
422
给了你n,然后n个数字在一个数组中,接下来m个询问,每个询问三个数字 t,x,y,若t==0,那么修改区间[x,y]的每一个值,变为原来每个位置上的数 开根号取整,若t==1,那么对区间[x,y]求和
由于n,m,很大,所以树状数组铁定超时,若直接用线段树来做区间修改,那么也是超时,这类题目没别的方法了,静心剪枝,发现题目给的数据范围为2^63,有没有发现,2^63开根号 绝对不需要开1...
分类:
其他好文 时间:
2014-05-12 23:01:59
阅读次数:
479