关闭
当前搜索:

排序方法(数据结构)

经典排序算法     经典排序算法,以下文章参考了大量网上的资料,大部分都给出了出处这一系列重点在理解,所以例子什么的都是最简单的情况,难免失误之处,多指教大多数排序算法都给出了每一步的状态,以方便初学者更容易理解,通俗易懂,部分难以理解的排序算法则给出了大量的图示,也算是一个特色吧经典排序算法 - 快速排序Quick sort 经典排序算法 - 桶排序Bucket sort经典排序算法 -  插入...
阅读(27) 评论(0)

n个数的出栈方式(卡特兰数)

问题给定n个数,有多少种出栈序列,进栈是按照顺序进栈?分析:当n为1时: f(1) = 1 //即 1 当n为2时: f(2) = 2;//12, 21 当n为3时: f(3) = 5;//123,132,213,321,231 当n为4的时候: 当a第一个出栈的时候,bcd的进栈与出栈的方式与n=3的时候是一样的,是它的子问题,此时有f(3)种不同结果。...
阅读(24) 评论(0)

Ordering Tasks(优先工作)拓补排序

Ordering Tasks工具 queue vector 思路主要是处理好每个点的入度的关系,当一个节点的前驱节点全部被处理的时候,表示该节点能被处理,每处理一个节点,他对应的后序节点的入度都减1#include #include #include #include #include using nam...
阅读(22) 评论(0)

A-B差集(即在A但不在B的数)

A B的差集思路:对于这个查找的题,如果用一般的循环去查找,时间复杂度为O(n2),肯定是不能Accepted的,那么我们是否可以将时间复杂度降低到O(n)呢?为了达到这个目的,我们需要用到下面的容器 1. set 2. vector思路 首先用两个vector存好输入的数据 将两个vector的数据转化为set的数据,由于set的自动去重功能,次数set的数据都是唯一的。 我们每次将set1中...
阅读(77) 评论(0)

统计数字出现次数

Description 某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*10^9)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。 Input 包含多个测试数据,每个包含n+1行: 第1行是整数n,表示自然数的个数。 第2~n+1行每行一个自然数。...
阅读(34) 评论(0)

寻找第k大数字(numberk)

Time Limit: 10sec Memory Limit:256MB Description 经过长时间的筹备工作,在Jourk,Ronny,Plipala,阿长,阿沈等人的努力下,DM实验室建立起自己的系列网站,其中包括三个大板块:DMOJ首页、DMOJ论坛、DMOJ博客。 作为一个大型的网站,数据的加工处理需要用到很多算法系统模块,通过这些模块对系统主数据库进行修改...
阅读(96) 评论(0)

二分查找

Description 实现二分查找函数,函数接口如下。 /* size为数组s的实际大小。 假定s非递减有序,如果s中存在值为target的元素, 则返回最后一次出现的位序号,否则返回-1表示不存在。 位序号从0开始计。*/ int binSearch(const int s[], const int size, const int target) {...
阅读(50) 评论(0)

实现栈和队列的不同方法

实现栈和队列的不同方法本博客通过顺序和链式两种方式分别去实现了栈和队列,仅供参考//main.cpp #include #include "source.hpp" #include "arrayOfStack.hpp" #include "arrayOfQueue.hpp" #include "linkOfStack.hpp" #include "LinkOfQueue.hpp...
阅读(57) 评论(0)
    个人资料
    • 访问:2722次
    • 积分:156
    • 等级:
    • 排名:千里之外
    • 原创:11篇
    • 转载:3篇
    • 译文:0篇
    • 评论:31条
    文章分类