随笔分类 - 编程之美&&算法导论
摘要:鸽巢排序:鸽巢排序, 也被称作基数分类, 是一种时间复杂度为(Θ(n))且在不可避免遍历每一个元素并且排序的情况下效率最好的一种排序算法. 但它只有在差值(或者可被映射在差值)很小的范围内的数值排序的情况下实用.当涉及到多个不相等的元素, 且将这些元素放在同一个"鸽巢"的时候, 算法的效率会有所降低...
阅读全文
摘要:public class QuickSort { public static void sort(int arr[],int low,int high){ int l=low; int h=high; int temp=arr[low]; ...
阅读全文
摘要:收集这道题目原因是以前做过,但是实现的很麻烦,这次看到别人写的感觉简单易懂。从一个pdf看到,出处就不贴了 = 。=public class RenMingBi { private static final char[] data = new char[] { '零', '壹', '贰', '...
阅读全文
摘要:有两个文件context.txt和words.conf,请尝试将他们合并成为一段文字,并打印出来。这两个文件内容如下:context.txt“并不是每个人都需要$(qunar)自己的粮食,$(flight.1)每个人都需要做自己穿的$(flight.2),我们说着别人发明的$(hotel),使用别人...
阅读全文
摘要:一个10*10的矩阵(可以理解为棋盘),随时生成一组数据填入矩阵,任何一个位置的数字除4进行计算,按余数着色,余数为0着色为red,1为blue,2为green,3为black,可以理解为生成4中颜色的棋子放入棋盘,如果存在其中同色五星连珠的情况(规则通五子棋),找出任意一组,输出5个棋子的位置下标...
阅读全文
摘要:注此题与《剑指offer》面试题33相同首先借鉴别人的思路http://blog.csdn.net/lands92/article/details/38345533先看她的代码package com.cn.qunar.test;/** * @author 刘利娟 liulijuan132@gmail...
阅读全文
摘要:题目描述:输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。九度OJ地址:http://ac.jobdu.com/problem.php?pid=1368自己写的代码,自己运行没问题,提交总是不通过 = = 1...
阅读全文
摘要:一篇不错的博客:http://www.cnblogs.com/dolphin0520/archive/2011/08/24/2151846.htmlKMP字符串模式匹配通俗点说就是一种在一个字符串中定位另一个串的高效算法。简单匹配算法的时间复杂度为O(m*n);KMP匹配算法。可以证明它的时间复杂度...
阅读全文
摘要:堆排序是利用堆的性质进行的一种选择排序。下面先讨论一下堆。1.堆堆实际上是一棵完全二叉树,其任何一非叶节点满足性质: Key[i]=Key[2i+1]&&key>=key[2i+2] 即任何一非叶节点的关键字不大于或者不小于其左右孩子节点的关键字。 堆分为大顶堆和小顶堆,满足Key[i]>=Key[...
阅读全文
摘要:取出float在内存中的编码:void printFloatAsBinary(float f){ // 二进制的位数 const int bits = sizeof(f) * 8; // 将float类型的内存搬到int中,这样才可以使用位操作符按位输出 int ff = *(int*)&f; // n表示二进制的index,1指向第一位 int n = 0; for(int i = bits-1; i>=0; --i) { printf("%d", ( (ff>>i) & 0x01 ) );//(ff>>i) & 0x
阅读全文
摘要:1.burnside定理,polya计数法 这个大家可以看brudildi的《组合数学》,那本书的这一章写的很详细也很容易理解。最好能完全看懂了,理解了再去做题,不要只记个公式。 *简单题:(直接用套公式就可以了) pku2409 Let it Beadhttp://acm.pku.edu.cn/JudgeOnline/problem?id=2409 pku2154 Colorhttp://acm.pku.edu.cn/JudgeOnline/problem?id=2154 pku1286 Necklace of Beadshttp://acm.pku.edu.cn/JudgeOnline/p
阅读全文

浙公网安备 33010602011771号