查找第k小数

题目描述:

查找一个数组的第K小的数,注意同样大小算一样大。
如  2 1 3 4 5 2 第三小数为3。

输入:

输入有多组数据。
每组输入n,然后输入n个整数(1<=n<=1000),再输入k。

输出:

输出第k小的整数。

样例输入:

6
2 1 3 5 2 2[......]

Read more


POJ 2386解题报告

之前在面试的时候被问到一个关于深度优先搜索的题目。后来在《挑战程序设计竞赛》书上看到了那道面试题的原型,这是POJ上的一道题目。

题目描述:

有一个大小为N*M的园子,雨后积起了水。八连通的积水被认为是连接在一起的。请求出园子里总共有多少水洼?(八连通指的是下图中相对W的*的部分)

*[......]

Read more

一道简单的贪心法设计题

这几天闲来无事,又翻了翻《挑战程序设计竞赛》。这本书其实是去年年初的时候买的,到现在将近一年了吧。说来惭愧,到现在还没看完。
昨天一翻就翻到了贪心法这一小节。贪心法一直是算法设计中经常用到的一种方法。比如,最小生成树算法(prim algorithm)和最短路径算法(dijkstra algori[......]

Read more

《大神与三个小伙伴》解题报告

题目说明:
时间限制:2000ms
单点时限:1000ms
内存限制:256MB

描述

L国是一个有着优美景色且物产丰富的国家,很多人都喜欢来这里旅游并且喜欢带走一些纪念品,大神同学也不例外。距离开L国的时间越来越近了,大神同学正在烦恼给她可爱的小伙伴们带什么纪念品好,现在摆在大神[......]

Read more

三个经典问题

求第K小的数

一般的方法是:先对数列进行一次排序,然后找到第k小的数。假如用快排来做排序的话,时间复杂度为O(nlogn)。O(nlogn)看起来貌似效果也不错,但是否还有比它更高效的算法呢?答案是肯定的。我们先来看下第k小的数有什么特点:一个数列中第k小的数,在这个数列中一定有k-1个数比它小,[......]

Read more

逆向最大匹配分词算法

中文分词是所有中文信息处理的基础。在数据挖掘、搜索引擎、自然语言处理等领域都起着至关重要的作用。中文分词算法大概可以分为三类:正向最大匹配、逆向最大匹配以及基于统计概率模型的算法。这篇博文讲的就是逆向最大匹配分词算法。其实正向最大匹配和逆向最大匹配算法类似。逆向最大匹配算法虽然简单,但在处理一些语句[......]

Read more

PKU ACM 3255解题报告

dijkstra算法由荷兰计算机科学家dijkstra提出。核心算法思想是广度优先搜索,也是一种贪心算法。dijkstra算法可以用来求非负权有向图的单源最短路径,其实它不仅仅可以用来求单源最短路径,还能用来求单源次短路径,后面我会具体给个求单源次短路径的问题。

dijkstra算法描述:设置[......]

Read more