自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

dzyhenry的专栏

Do one thing, do it good.

  • 博客(4)
  • 资源 (19)
  • 收藏
  • 关注

原创 乐视TV2015校园招聘A卷第二大题(中国科学院大学站)

题目描述:给定数组A,大小为n,数组元素为1到n的数字,不过有的数字出现了多次,有的数字没有出现。请设计算法和程序,统计哪些数字没有出现,哪些数字出现了多少次。能够在O(n)的时间复杂度,O(1)的空间复杂度要求下完成么?(思路和代码)参考:http://mp.weixin.qq.com/s?__biz=MjM5ODIzNDQ3Mw==&mid=200446711&idx=1&sn=0

2014-09-30 14:55:52 1793

原创 整数数组的组合问题

2015年9月16日,美团南京站南京邮电大学笔试题目之一。大致的题意是这样的:有一个元素各不相同的整数数组,输入元素的所有组合,长度由大到小。例如:[1, 2, 3, 4],依次输出1234,123,134,234,12,13,14,23,24,1,2,3,4思路:1、设输出的组合的长度为m(m2、把数组分为两个部分:第一个数和后面的m-1个数3、如果组合里包含第一

2014-09-17 16:57:52 1466

原创 输入阿拉伯数字(整数),输出对应的中文(美团网2014年9月16日笔试题目之一)

2014年9月16日,美团网南京笔试题之一。原要求是输入整数的位数最多为四位,这里扩展为12为,即最高到前一级别。思路及步骤:1 判别输入是否合法,并过滤字符串最前面的‘0’。2 将字符串划分成四位一组的形式,其中每一组四位整数的输出方式相同。如20402040,其前四位和后四位都是2040,都输出“二千零四十”,只不过前四位要添上‘万’字而已。3 将8~12位、4~8位、0~4位

2014-09-17 15:07:18 3118

原创 C++实现二叉树的前序、中序、后序非递归扁历

这三种常见的扁历方式,是考研面试等场合经常遇到的,在此做一个总结。1、前序遍历比较简单:用指针p指向根节点,若p!=NULL且栈非空,则直接访问节点,并将节点的右孩子入栈,同时指针p向左孩子移动。2、中序扁历:用指针p指向根节点,若p!=NULL且栈非空,则当前节点入栈,同时指针p向左孩子移动,出栈是指针指向当前节点的右孩子。3、后序扁历相对复杂:需要设置一个辅助栈,标识该节点是否是第

2014-09-09 16:31:31 1031

spidermonkey1.7.0

Spidermonkey, a JavaScript engine on Linux.After downloading, unzip it. Do as follows: wget http://ftp.mozilla.org/pub/mozilla.org/js/js-1.7.0.tar.gz -O- | tar xvz cd js/src make -f Makefile.ref sudo mkdir -p /usr/include/smjs/ -v sudo cp *.{h,tbl} /usr/include/smjs/ -v cd Linux_All_DBG.OBJ sudo cp *.h /usr/include/smjs/ -v sudo mkdir -p /usr/local/{bin,lib}/ -v sudo cp js /usr/local/bin/ -v sudo cp libjs.so /usr/local/lib/ -v

2014-11-23

linux spidermonkey1.7.0

Spidermonkey 1.7.0 for Linux。解压后安装方法: wget http://ftp.mozilla.org/pub/mozilla.org/js/js-1.7.0.tar.gz -O- | tar xvz cd js/src make -f Makefile.ref sudo mkdir -p /usr/include/smjs/ -v sudo cp *.{h,tbl} /usr/include/smjs/ -v cd Linux_All_DBG.OBJ sudo cp *.h /usr/include/smjs/ -v sudo mkdir -p /usr/local/{bin,lib}/ -v sudo cp js /usr/local/bin/ -v sudo cp libjs.so /usr/local/lib/ -v

2014-11-23

spidermonkey1.7.0 for linux

spidermonkey,Linux中的JavaScript运行环境。解压后安装方法: cd js/src make -f Makefile.ref sudo mkdir -p /usr/include/smjs/ -v sudo cp *.{h,tbl} /usr/include/smjs/ -v cd Linux_All_DBG.OBJ sudo cp *.h /usr/include/smjs/ -v sudo mkdir -p /usr/local/{bin,lib}/ -v sudo cp js /usr/local/bin/ -v sudo cp libjs.so /usr/local/lib/ -v

2014-11-23

基本排序算的实现

用C/C++复习一下常见的几种排序算法。是自己一行一行敲出来的代码。

2014-07-23

模式识别ISODATA算法C++实现

ISODATA算法是模式识别课程中一个比较重要的动态聚类算法。本程序模拟了其分类过程。由于程序的开发平台是Visual Studio2012 ,对比较旧的版本可能无法兼容,解决办法是:把代码复制出来自己重新建立工程实现。

2013-04-20

K-Means聚类分析算法C语言实现

模式识别课程中,动态聚类算法中比较容易的K-Means聚类分析的C语言实现。

2013-04-08

二分搜索的递归和非递归实现

二分搜索的递归和非递归实现。比较简单的实现。

2013-03-07

数组循环左移

将一个n元一维向量向左旋转(即循环移位)i个位置。例如,当n=8,且i=3时,向量abcdefgh旋转为defghabc。能否使用数十个额外字节的存储空间,在正比于n的时间内完成?

2013-03-06

编程珠玑之位图排序

输入:一个最多包含n个正整数的文件,每个数都小于n,其中n=10^7,。如果在输入文件中有任何整数重复出现就是致命错误。没有其他数据与该整数关联。 输出:按升序排列的输入整数列表。 约束:最多有(大约)1MB的内存空间可用,有充足的磁盘存储空间可用。运行时间最多几分钟,运行时间为10秒就不需要进一步优化了。

2013-03-02

分治法求逆序数

求逆序数的方法很多。最容易想到的办法是分别对序列中每一个元素求其逆序数,再求所有元素的逆序数总和,易分析得出这样的方法其时间复杂度为O(n2)。而这里采用的分治法求逆序数,其时间复杂度为O(nlogn)。

2013-02-02

图的基本操作

整理了一下图的基本算法,包括图的深度优先遍历、广度优先遍历、拓扑排序、三种单源最短路径(Bell-Ford、Dijkstra、有向无回路最短路径算法)、关键路径。

2012-12-11

八数码问题A*算法C语言实现

八数码问题,实际就是在一个3X3的九宫格内,其中一个格子为空,其余八个格子分别用1-8的数字填充,这八个数字在九宫格内所占格子的位置可以任意。我们所求就是在两种占位置的情况下,如何从其中一种情况,转移到另一种情况?当然,限制条件是:移动过程中,只能是空格周围的格子向空格移动。(有点儿类似我们小时候玩的一种移动滑块拼图的游戏。)

2012-11-22

教室课程调度问题的两种解法(区间着色问题)

问题描述:假如要用很多个教室对一组课程进行调度,每节课程都有其开始时间和结束时间,我们希望使用尽量少的时间来调度所有的课程,请给出调度算法?

2012-11-17

01背包问题

01背包问题是个老生常谈的关于动态规划的问题。 首先问题描述:给定n个物品,每个物品的重量是wi,每个物品的价值是pi,背包的最大容量是M,求如何装入这些物品才能使背包里的价值量最大?

2012-11-14

最长公共子序列(LCD)

在最长公共子序列问题中,给定了两个序列 X=<X1, X2, ..., Xm>和Y=<Y1, Y2, ..., Yn>,希望找出X和Y的最大长度公共子序列。LCS是动态规划算法中比较经典的问题。

2012-11-12

排序算法的分析

C语言实现快排、归并排序、快排改进算法的递归和非递归算法 。其实以上算法的原理都很简单。在本科阶段,我们对这几个算法的基本原理都应该十分熟悉,但对于我,真正落实到是实现这几算法,之前几乎没有试过。现在刚上研一,算法课的第一次作业中,要求我们将这几个算法实现,对这几个算法,在输入规模不同的情况下,比较其实际工作效率。

2012-11-10

查找第K个元素

已知两个等长的升序整数序列{a1, a2, ..., ak}和{b1, b2, ..., bk},求序列{ai+bj}的前k小元素,其中1≤i≤k且1≤j≤k,要求时间复杂度尽可能低。 思路:将(1,1,a1+b1)加入一个小根堆 while (堆非空且出堆的元素总数少于k个) 弹出堆顶元素(x, y, v) 将(x+1,y,a{x+1}+b{y})和(x,y+1,a{x}+b{y+1})加入堆中 (堆内元素间按v比较大小)

2012-11-10

EditDistance

编辑距离,又称Levenshtein距离(也叫做Edit Distance),是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。

2012-11-10

IP地址合法性检验

输入一个ip地址,根据其输入的格式和内容,看是否符合ipv4的地址规范,检验其合法性。

2012-11-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除