- 博客(29)
- 资源 (3)
- 收藏
- 关注
原创 【算法导论】0-1背包问题
0-1背包问题描述:已知:小偷在店里偷东西,小偷只带了一个最大承重为W的背包,商店里有N件商品,第i件商品的重量是weight[i],价钱是value[i]。限制:每种商品只有一件,可以选择拿或者不拿,不能分割,不能只拿一件商品的一部分(所以叫做0-1,0即不拿,1则整个拿走,且一种商品有且只有一件可供拿走)问题:在不超过背包最大承重的情况下,最多能拿走多少钱的商品
2015-01-30 21:36:58 2035
原创 【算法导论】用动态规划解活动选择问题
上一篇讲了贪心算法来解活动选择问题(【算法导论】贪心算法之活动选择问题),发现后面有一道练习16.1-1是要用动态规划来解活动选择问题。其实跟之前的矩阵链乘法有些相似,也是考虑分割的活动是哪一个,并用二维数据来记录Sij---最大兼容集合个数,和用另一个二维数据来记录Sij取得最大时的活动分割点k。然后就是考虑边界问题,和使用递归来求动态规划的最优解。#i
2015-01-28 22:19:11 3239
原创 【算法导论】同时求数组的最大值和最小值
算法导论(第三版)第九章里提出过一个比较有意思的小问题:如何在最短的时间内求出一个n长数组中最大和最小问题。下面就来做一个实现。 思路: ①把数组分成两个两个一组,然后先让子数组内部比较出一个大的和一个小的,然后最大值只跟子数组内的大值做比较,小值只跟子数组内的最小值做比较,如果发现符合的,则重新赋值。 ②对于偶数的数组
2015-01-26 10:05:00 2919
原创 【微软100题】003求子数组的最大和
/* * 题目: * 3.求子数组的最大和(数组) * 题目: * 输入一个整形数组,数组里有正数也有负数。 * 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 * 求所有子数组的和的最大值。要求时间复杂度为 O(n)。 * 例如输入的数组为 1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为 3, 10, -4, 7, 2, * 因此输出为该
2015-01-22 16:46:02 682
原创 【微软100题】002设计包含 min 函数的栈
/* * 题目: * 2.设计包含 min 函数的栈(栈) * 定义栈的数据结构,要求添加一个 min 函数,能够得到栈的最小元素。 * 要求函数 min、 push 以及 pop 的时间复杂度都是 O(1)。 */#include using namespace std;/* * 想法:用数组实现一个栈,这样 push和pop的时间复杂度都是O(1),每个数组元素,除了k
2015-01-22 15:59:37 634
转载 贝叶斯反垃圾邮件技术
一、 贝叶斯反垃圾邮件技术介绍 贝叶斯是基于概率的一种算法,是Thomas Bayes:一位伟大的数学大师所创建的,目前此种算法用于过滤垃圾邮件得到了广泛地好评。贝叶斯过滤器是基于“自我学习”的智能技术,能够使自己适应垃圾邮件制造者的新把戏,同时为合法电子邮件提供保护。在智能邮件过滤技术中,贝叶斯(Bayesian)过滤技术取得了较大的成功,被越来越多地应用在反垃圾邮件的产品中。 二、 贝
2015-01-21 21:11:55 1991
原创 【算法导论】动态规划之“钢管切割”问题
动态规划,其实跟分治法有些相似,基本思想都是将复杂的问题分成数个简单的子问题,然后再去解决。它们的区别在于,分治法关注的子问题不相互“重叠”,而动态规划关注的子问题,多是相互“重叠”的。
2015-01-18 10:34:59 12674 6
原创 【编程之美】1.2中国象棋的将帅问题
引子问题:中国象棋将帅问题:在一把象棋的残局中,象棋双方的将帅不可以相见,即不可以在中间没有其他棋子的情况下在同一列出现。而将、帅各被限制在己方的3*3的格子中运动。相信大家都非常熟悉象棋的玩法吧,这里就不详细说明游戏规则了。用A、B代表将和帅,请写出一个程序,输出A、B所有合法的位置。要求在代码中只能用一个变量。分析与解法:这个问题的解法并不复杂。遍历A的所有位置
2015-01-17 10:24:30 991
原创 【编程之美】1.1让cpu占用率曲线听你指挥
尝试了书中的几种方式,发现都不明显,只有下面这种方法,而且要把时间片调到7ms的时候,才大致是在百分之50:/* * 让cpu占用率曲线听你指挥 * * 写一个程序,让用户来决定windows任务管理器的cpu占用率,程序越精简越好,计算机语言不限。实现下面三种情况 * * 1、cpu的占用率固定在50%,为一条直线 * 2、cpu的占用率为一条直线,具体占用率由命令行参数
2015-01-17 10:11:44 928
转载 c++ assert() 使用方法
assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include void assert( int expression );assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。请看下面的程序清单badptr.c:#i
2015-01-16 21:05:43 7268
原创 【微软100题】001把二元查找树转变成排序的双向链表(树)
/** * 题目: * 1.把二元查找树转变成排序的双向链表(树) 题目: 输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。 要求不能创建任何新的结点,只调整指针的指向。 10 / / 6 14 / / / / 4 8 12 16 转换成双向链表 4=6=8=10=12=14=16。 *//* * 想法:如果采用中序遍历,那么就是从小到大排序的输出,
2015-01-16 17:00:18 767
转载 一个应届计算机毕业生的2012求职之路
1、简介毕业答辩搞定,总算可以闲一段时间,把这段求职经历写出来,也作为之前三个半月的求职的回顾。首先说说我拿到的offer情况:微软,3面->终面,搞定百度,3面->终面,口头offer搜狗,2面,悲剧腾讯,1面,悲剧布丁移动,3面,搞定涂鸦游戏,3面,搞定友盟,3面->CEO面,搞定雅虎,4面->终面,搞定微策略,2面,悲剧人民搜索,3面->终面,
2015-01-15 21:05:43 1213
转载 学长们的求职血泪史(C/C++/JAVA)
2014届校招基本慢慢收尾,现特将本人和小伙伴们的求职血泪史记录,并且推荐一些书籍供学弟学妹们参考,以壮我皇家理工之名。 首先得感谢百度的师兄,他教会了我很多东西,致以很深的谢意。另外还得感谢一起求职的小伙伴们,希望我们的经历能够给学弟学妹们一个参考。 以下分三个方向讲解,每个方向都是一个学长独自撰稿。(一) C语言篇C语言求职血泪史
2015-01-15 19:55:28 1401
原创 【算法导论】红黑树详解之一(插入)
红黑树是建立在二叉查找树的基础之上的,关于二叉查找树可以参看【算法导论】二叉搜索树的插入和删除和【算法导论】二叉树的前中后序非递归遍历实现。对于高度为h的二叉查找树而言,它的SEARCH、INSERT、DELETE、MINIMUM、MAXIMUM等操作的时间复杂度均为O(h)。所以在二叉查找树的高度较高时,上述操作会比较费时,而红黑树就可以解决这种问题。
2015-01-14 11:11:47 16032 8
原创 【算法导论】十一章散列表11.1-4大数组实现直接寻址方式的字典操作
算法导论第三版,第十一章散列表 习题11.1-4 大数组实现直接寻址方式的字典操作。
2015-01-05 16:33:54 1235
转载 C++ Primer】两个类相互包含的求解策略
一,问题描述 A类包含B类的实例,而B类也包含A类的实例 二,求解策略 1)错误的解法 A文件包含B,而B文件又包含A文件,这样就形成死循环[html] view plaincopy#include "B.h" class A
2015-01-05 16:14:34 719
转载 JAVA多线程和并发基础面试问答
多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一。在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对应日后碰到的问题。(校对注:非常赞同这个观点)Java多线程面试问题1. 进程和线程之间有什么不同?一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用。而线程是在进程中执行的
2015-01-04 16:57:37 755
转载 二叉树的非递归遍历
二叉树的非递归遍历 二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有前序、中序以及后序三种遍历方法。因为树的定义本身就是递归定义,因此采用递归的方法去实现树的三种遍历不仅容易理解而且代码很简洁。而对于树的遍历若采用非递归的方法,就要采用栈去模拟实现。在三种遍历中,前序和中序遍历的非递归算法都很容易实现,非递归后序遍历实现起来相对来说
2015-01-04 15:22:11 669
转载 Linux 防火墙开放特定端口 (iptables)
iptables是linux下的防火墙,同时也是服务名称。service iptables status 查看防火墙状态service iptables start 开启防火墙service iptables stop 关闭防火墙service iptables restart
2015-01-02 14:04:29 846
转载 WinSCP 5.5版本中文目录乱码问题的解决方案
如果从官网上直接下载安装WinSCP(我用的是5.5.4版本)之后,可能出现中文目录乱码问题。话不多说,一下截图解决方案:1.打开你的WinSCP应用之后,在登陆界面,配置好你的主机名、用户名、密码此时,【高级】按钮时灰色不可点状态,点击【编辑】:2. 点击【高级】:3.找到“文件名UTF-8编码”这一项,将右边改成【关闭】(默认可能
2015-01-02 11:27:27 1004
转载 Linux下ssh登录速度慢的解决办法
相信很多朋友在使用Linux系统的时候因为安全性的原因摒弃了telnet rlogin 或者 X-window,而把openssh作为自己默认的远程登录方式。 然而经常会遇到的一个情况是telnet到server速度很快,但是ssh连接的时候却很慢,大概要等半分钟甚至更久。ping的速度也非常好,让人误以为是ssh连接不上。 下面说下如何解决这样的问题, 最为常见的原因是因为se
2015-01-01 13:47:55 744
事件分发处理ViewPagerListView例子
2015-04-22
httpclient-android-4.3.5.1.jar
2015-03-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人