前面讲的是比较排序算法,主要有冒泡排序,选择排序,插入排序,归并排序,堆排序,快速排序等。 非比较排序算法:计数排序,基数排序,桶排序。在一定条件下,它们的时间复杂度可以达到O(n)。 一,计数排序(Counting Sort) (1)算法简介 计数排序(Counting sort)是一种稳定的排序 ...
分类:
编程语言 时间:
2018-06-08 00:51:06
阅读次数:
245
A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child. Input Each input file contain ...
分类:
其他好文 时间:
2018-06-07 20:47:43
阅读次数:
197
题目大意 求有多少中1~n的排列,使得$abs(第i个位置的值 i)!=k$ 解题思路 考虑容斥,$ans=\sum_{i=0}^{n}( 1)^ig "i" !(g[i]表示至少有i个位置是不合法的方案数)$ 考虑如何求g[i] 将每个位置和每个值都作为一个点,有2n个点,如果第i位置不可以填j, ...
分类:
其他好文 时间:
2018-05-28 13:47:45
阅读次数:
179
题目链接 "hdu6184" 题解 题意是让我们找出所有的这样的图形: 我们只需要求出每条边分别在多少个三元环中,记为$x$,再然后以该点为中心的图形数就是${x \choose 2}$ 所以我们只需找出所有三元环 据说这是一个套路题 我们将所有无向边改为有向边,由度数小的向度数大的连边,度数相同就 ...
分类:
其他好文 时间:
2018-05-25 19:26:04
阅读次数:
379
题目来源:2016沈阳区域赛 C.Recursive sequence 矩阵快速幂,思路来自oldz E.Counting Cliques 搜索,建图时有个比较重要的优化,写完代码会发现用到的边,只有由编号小到大的单向边。。。根本没想到搜。。。总结一下吧 G.Do not pour out 二分+微 ...
分类:
其他好文 时间:
2018-05-19 20:38:12
阅读次数:
177
题意 有n条线段,且都平行于坐标轴。对于每条线段,给出两个端点的坐标。问一共有多少个线段的交点。 分析 最最简单的扫描法了。用线段树或者树状数组都可以。 由题目可知,线段只有两种,要么平行于x轴要么平行于y轴。而交点只能是两个不平行的线段产生的。 所有我们以一条平行于x轴的线为扫描线,从下向上扫。先 ...
分类:
其他好文 时间:
2018-05-15 13:21:30
阅读次数:
169
每次刷leetcode都有一种发现新大陆的感觉。 题目链接:https://leetcode-cn.com/problems/counting-bits/description/ 给定一个非负整数 num。 对于范围 0 ≤ i ≤ num 中的每个数字 i ,计算其二进制数中的1的数目并将它们作为 ...
分类:
其他好文 时间:
2018-05-13 18:29:43
阅读次数:
258
http://poj.org/problem?id=2386 ...
分类:
其他好文 时间:
2018-05-12 11:18:37
阅读次数:
173
A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties: The left subtree of a node contains only nodes ...
分类:
其他好文 时间:
2018-05-05 15:30:22
阅读次数:
260
Parallelogram Counting 题意:输入t表示有t组数据 每组数据输入一个数n,表示有n个点 然后有n行,每行是这个点的(x,y) 问这些点能组成多少个平行四边形 思路:求中点,中点一样的是一个平行四边形。 记录同一个中点的个数sum(初始为1),平行四边形数是(sum-1) * s ...
分类:
其他好文 时间:
2018-05-02 16:23:38
阅读次数:
159