自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

转载 【算法剖析】求字符串中无重复字符的最长字串

1、问题描述  这个问题来自leetcode中的Longest Substring Without Repeating Characters,诚如标题所述,我们需要寻找的是在一个字符串中,没有重复字符的最长字串。我们假定字符串中的字符只由$a$~$z$这26个字符构成。例如,对于字符串"$abcabcbb$",它的无重复字符最长字串是"$abc$",长度为3;对于字符串"$bbbb$...

2019-09-26 06:21:57 281

转载 【IT企业笔试集】2013年阿里巴巴实习生招聘笔试题目及解答

有幸参加了2013年5月5日阿里巴巴的实习生招聘笔试,这次笔试的难度对我而言,前半部分不涉及算法的内容,都比较容易。而后面3道关于算法的习题都解答得很不好,暴露出来自己的一些问题。本人马上也要毕业了,想通过这个博客记录下自己在准备应聘过程中所遇到的各种问题、难题,记录下来以供查阅,同时与诸君分享,欢迎积极交流。题目来源:http://50vip.com/blog.php?i=2...

2019-09-26 06:21:56 128

转载 【深入理解计算机系统-第二版】3.66习题

题目:You are charged with maintaining a large C program, and you come across the following code: 1 typedef struct { 2   int left; 3   a_struct a[CNT]; 4   int right; 5 } b_struct;...

2019-09-26 06:21:53 193

转载 【深入理解计算机系统-第二版】3.55习题

深入理解计算机系统(英文版 第二版)中的第三章家庭作业3.55想了一个晚上也没有想出来到底是怎么回事。百度也没有百度出结果,而用google搜索相关内容,终于找到了其中的“猫腻”。如果想要直接看,则点击下面链接。http://stackoverflow.com/questions/11680720/implement-64-bit-arithmetic-on-a-32-bit-m...

2019-09-26 06:21:50 149

转载 【算法剖析】寻找两个已序数组中的第k大元素

1、问题描述  给定两个数组A与B,其大小分别为m、n,假定它们都是已按照增序排序的数组,我们用尽可能快的方法去求两个数组合并后第k大的元素,其中,1\le k\le(m+n)。例如,对于数组A=[1,3,5,7,9],B=[2,4,6,8]。我们记第k大的数为max_{k-th},则k=4时,max_{4-th}=4。这是因为排序之后的数组A+B=[1,2,3,4,5,6,7,8,...

2019-09-26 06:21:49 466

转载 WPF编程小技巧随笔

最近在实现一个12306的本地客户端,初次使用微软的WPF,在开发过程中遇到了许多问题。在此,将这些问题一一罗列出来,并不断更新,以备查阅,并与众网友分享。Q:WPF中如何去除控件在取得焦点状态时的虚线框?A:设置 控件的FocusVisualStyle 为="{x:Null}" 或着在控件的Style中设置:<Setter Property="FocusVisualSty...

2019-09-26 06:21:47 91

转载 神经网络后馈算法剖析

在coursera中Ng的机器学习课程中,他介绍了神经网络中的前向传播算法以及后馈算法,但是对于后馈算法中,为什么要那么做,只用了一句需要使用复杂的数学来证明。我查阅了相关的资料,对这一部分的原理进行了学习,现将这部分知识记录下来,以供共同学习。1、简单的线性模型中误差分析使用一个大小为N的训练集对一个预测(分类)模型进行训练时,总误差为:        ————(1)...

2019-09-26 06:21:45 470

转载 【算法剖析】最长公共子序列与最长递增子序列的浅析

最长公共子序列  最长公共子序列(Longest Common Sequence,LCS)问题是典型的适用于动态规划求解的问题。LCS的定义是:  给定一个串,以及另外一个串,如果存在一个单调增的序列,对于所有,有,则称是的一个子序列。如果对于两个串,,既是的子序列,又是的子序列,那么就称是与的公共子序列,LCS就是指所有子序列中最长的那个子序列(可能有多个)。...

2019-09-26 06:21:43 210

转载 【WPF编程】一个未完成的12306本地客户端的源代码

  最近花了一段时间在学习WPF编程,并写了一个12306网站的本地客户端程序来练手。这个客户端目前还不完整,主要实现了:登录查询火车票这两个功能。我将源代码放出,供同样是WPF新手的同学间学习交流。代码中还存在较多的问题,但已初具框架。以后如有时间,我会慢慢地对其进行进一步的实现与完善。http://files.cnblogs.com/XjChenny/1...

2019-09-26 06:21:42 132

转载 Linux操作系统中文件结构stat中st_size的说明以及对于文件中洞(Holes)的理解

文件stat结构体中st_size成员  对于所有的文件类型,st_size成员对其中的普通文件、目录以及符号链接有实在的意义。其中,对于普通文件而言,st_size记录了该文件的实际大小;对于目录而言,st_size的值为16或者512的倍数;对于符号链接而言,st_size的值为符号链接所指的路径的长度。例如lib->usr/lib,则st_size的值即为7。  在某...

2019-09-26 06:21:39 1141

转载 【深入理解计算机系统-第二版】第二章部分家庭作业(Homework)参考答案

这几天一直在写《深入理解计算机系统》第二版中第二章的家庭作业,费了几天的时间,终于完成了。当初碰到若干题不会,在网上也没有搜索到答案。现在,我把这份自己完成的答案分享上来,与大家交流思想。其中错误一定会存在,如果有错误,希望指出来,共同进步。2.67A:左移位数大于等于int长度。B:可以考虑用两次左移来实现<<32:int set_msb=1<<...

2019-09-26 06:21:38 918

转载 数据挖掘之关联分析的基本概念

6.关联分析6.1.Problem Definition  关联分析(Association Analysis)是指从大量的数据集中,搜索出有强关联的规则(Rule),但是这个计算过程通常计算成本很高。建立关联规则的两个重要判据是:Support以及Confidence。Support简单地讲,就是指在数据集中,包含规则中所有Item的条目越多,Support越大,就越能够排除偶...

2019-09-26 06:21:36 354

转载 【每天进步一点】2012.04.12

上午 上午刚到实验室的时候,先写完了一个程序,在USACO上一次就pass,虽然比较水,但是还是很开心。然后又打电话跟女朋友沟通了一些感情上的问题,说完之后,感觉心情明显好得多了。要不然,可能今天一整天就会用写程序去打发它了。 之后阅读了<<Introduction To Algorithms>>的single-source short...

2019-09-26 06:21:33 80

转载 【Windows内核原理与实现】读书笔记(六)

Windows内核中执行体层负责各种与管理和策略相关的功能,而内核层(或微内核)实现了操作系统的核心机制。内核层的进程和线程对象 内核层中线程和进程中的数据结构分别是KPROCESS和KTHREAD。其中KPROCESS的定义为:typedef struct _KPROCESS { //这两个头部很少被使用 DISPATCHER_HEADER ...

2019-09-26 06:21:30 83

转载 【Windows内核原理与实现】读书笔记(三)

Windows内核中对象管理 Windows对象管理器的基本设计意图是: 为执行体的数据结构提供一种统一又可扩展的定义和控制机制。 提供统一的安全访问机制。 在无需修改已有系统代码的情况下,加入新的对象类型。 提供一组标准的API来对对象执行各种操作。 提供一种命名机制,与文件系统的命名机制集成在一起。 每一个对象都由两部分构成:对象头和对象体,所有...

2019-09-26 06:21:26 89

转载 【Linux】Linux下的硬链接与符号链接

  Linux的初学者常常混淆Linux中的硬链接(hard link)与符号链接(symbol link)的概念,分不清楚它们的区别。因此,本文将向读者全面介绍硬链接与符号链接,给予读者以全面的认识。1.Linux下的文件系统 1.1 Ext2文件系统结构  为了能够从本质上理解硬链接与符号链接,我们必须要对Linux下的文件系统有一定的认识。这一小节将向读者简要地介绍Li...

2019-09-26 06:21:25 254

转载 【USACO】两道简单的ACM试题

SuperPrime Rib题目(简述):找出某一长度的超级素数。所谓的超级素数,例如7331:其中7331是素数,733是素数,73是素数,7是素数。即每次从该数中去掉最后一位数后,依然是素数的素数,被称为超级素数(superprime)。分析:判断一个数是不是超级素数,我们需要判断n次,n为这个数的位数。为了使程序更快,我们应该首先判断最高位是不是素数,然后判断...

2019-09-26 06:21:23 153

转载 算法导论——15.2-5题答案

题目:SHow that a full parenthesization of an n-element expression has exactly n-1 pairs of parentheses.解答:n个元素的表达式在完全没有括弧化之前,可以看成有n个独立元素。括弧化的结果是将原来两个独立的元素合并成一个独立的元素。那么n元素的表达式完全括弧化的操作,即让此具有n个独...

2019-09-26 06:21:21 472

转载 【Windows编程】基于USB设备的开机锁

*代码参考了《黑客防线2011精华奉献本上册》的文章《U盘打造开机锁》。原理  U盘是一种即插即用的可移动设备(PnP),它具有VID、PID以及产品序列号等可以标识其身份。引用一下文章来浅要介绍一下VID与PID的相关内容:  不同的U盘具有不同的序列号,因此我们可以通过识别U盘的序列号来判断该计算机上是否插有该U盘,如果没有则会强制关机,如果有U盘的话,则可以进行操...

2019-09-26 06:21:20 334

转载 【Linux】GNU C库 accept函数的逐层下调的研究

在我们写的socket程序中,一般都会使用网络套接字API,比如send()、accept()、receive()等函数,那么这些函数在Linux操作系统中是如何实现的呢?我们将通过分析代码对其进行深入的研究。本文中所使用的Glibc库版本为2.0.111,Linux内核版本为Linux 1.2.13。1.用户层代码 在程序中我们使用了accept...

2019-09-26 06:21:17 147

转载 【数据结构复习】(2)线性表(一)

线性表的定义  线性表是最简单的数据结构,一个线性表是由n个数据元素的有限序列。具有下列特点:    (1)存在唯一一个被称为“第一个”的数据元素;    (2)存在唯一一个被称为“最后一个”的数据元素;    (3)除了第一个之外,集合中的每一个数据元素均只有一个前驱;    (4)除最后一个之外,集合中的每一个数据元素均只有一个后继。线性表的实现  下面在...

2019-09-26 06:21:16 115

转载 【Windows内核原理与实现】读书笔记(四)

注册表和配置管理器Windows操作系统提供了被称为“注册表”的中心存储设施作为系统的配置和管理中心,应用程序和内核通过访问注册表来读写各种设置。Windows提供了一些API供应用程序访问注册表,这些API函数在接到注册表访问请求之后,当它们转发给内核的系统服务。在内核中,执行体包含一个成为“配置管理器”的组件,它是注册表的真正实现。注册表是一组成为储巢(hive)的文件构成的...

2019-09-26 06:21:11 74

转载 【经典数据结构算法】(3)最大子数组和

1 /************************************************************************/ 2 /* 3 题目: 4 输入一个整型数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每一个子数组都有一个和。 5 求所有子数组的和的最大值。要求时间复杂度为O(n)。 6 例如: ...

2019-09-26 06:21:07 79

转载 【经典数据结构算法】(2)设计包含min的栈

1 /* 2 * 题目: 3 * 设计包含min的栈 4 * 定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。 5 * 要求函数min、push以及pop的时间复杂度都是O(1) 6 */ 7 8 /* 9 * 分析: 10 * 自己曾经用了一天时间,也没有想出,后来看了别人的分析才知道比较好的解...

2019-09-26 06:21:04 87

转载 【经典数据结构算法】(1)二叉查找树与双向链表之间的转换

题目参看csdn上的一个很经典的帖子,http://topic.csdn.net/u/20101126/10/b4f12a00-6280-492f-b785-cb6835a63dc9.html?60918。但代码都是自己使用C语言写的,思路基本上都是自己想出的,如果参考了帖子上别人的思想,则会注明。 1 /* 2 * 将二元查找树转变为排序的双向链表 3 * ...

2019-09-26 06:20:55 89

转载 【数据结构复习】(1)绪论

前言  由于自己已经大四,开始决定写这个博客,记录下自己每一天一点一滴的进步,希望自己的收获能与大家一同分享。数据结构这门课是我在大二上学期所学的,由于之前学习C语言的时候已经接触了常用的一些数据结构,加之自己以前也看过不少数据结构方面的书,因此学习起来比较轻松。马上要参加2012年的研究生入学考试,数据结构作为专业课的一门,就要重新开始复习了。因此通过记录这个博客,来每天更新自己的...

2019-09-26 06:20:46 62

转载 【Windows内核原理与实现】读书笔记(二)

内容:43—51页处理器模式  在Intelx86处理器上,段描述符有一个2位长度的特权级:0表示最高特权级,3表示最低特权级。Windows只使用0和3两种特权级。特权级0表示CPU处于内核模式,3表示用户模式。处理器有许多指令只能够在特权级0的模式下使用,例如I/O指令,操纵内部寄存器(如GDT、IDT、MSR)的指令等。在Windows中,当处理器位于用户模式下,处理器只能...

2019-09-26 06:20:42 114

转载 【WindowsDDK】内核字符串操作蓝屏的一个解决办法

  前一段时间参加了学校的网络安全竞赛。其中有一道题目是“拦截注册表”,使用SSDT HOOK ZwSetKeyValue函数。在自己的ZwSetKeyValue函数中,需要对传递进来的注册表路径与设定好的注册表路径进行匹配(ANSII 比较),如果一样,则被拦截。否则,则放行。  虽然在Windows内核中并不推荐使用C语言的字符串操作的库函数,但又没有其他好的办法的时候仍然需要使...

2019-09-26 06:20:39 145

转载 【Windows内核原理与实现】读书笔记(一)

内容:18—42页  操作系统本身属于软件的范畴,但它与底层硬件打交道,为上层应用软件或应用程序提供了一层抽象,专门负责硬件资源的管理与分配。应用软件不直接使用硬件,而是通过操作系统提供的功能来实现各种应用任务。  LPC:进程间通信  现代操作系统的基本结构:应用环境-----------系统环境----------硬件设备...

2019-09-26 06:20:37 121

转载 【翻译】深入解析Windows操作系统(第五版)-第一章

第一章概念与工具 在这个章节,我们将介绍有关微软windows操作系统的概念和词汇,比如Windows API、进程、线程、虚拟内存、内核模式和用户模式、对象、句柄、安全以及注册表,它们将贯穿于整本书。我们同样将介绍一些能够帮助我们“遨游”Windows内核世界的工具,如内核调试器、可靠性与性能监视器以及从Windows Sysinternals(www.micr...

2019-09-26 06:20:33 192

转载 【杂】心神不宁,胡思乱想

  还是如此的把持不定,别人对自己好一些,就觉得有那么些可能。前天晚上的那话,已经是第二个人那样说了。只是现在的情形又不比以前。以前可以大大咧咧地去做,毫无忌惮地去迎合,偶尔狠一下心还能做出一些自己从来不敢做的事情。失败了又如何?但是现在,面对的却是我在交大为数不多的可做为朋友的人,在我眼里是接近于美好的存在。加上以前的挫败自己更加小心翼翼,不想因为一次冒失而失去所有甚至连见面都感到尴尬...

2019-09-26 06:20:30 88

转载 【经典数据结构算法】(4)二叉树求和为定值的所有路径

1 /* 2 题目:输入一个整数和一颗二叉树。 3 从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径。 4 打印出与输入整数相等的所有路径。 5 例如 输入整数22和如下二元树 6 10 7 / \ 8 5 12 9 / \10 4 711 则打印出两条路径:10,12和12,...

2019-09-26 06:20:30 175

转载 【QT学习】(一)配置Qt+VS2008环境

Qt是Nokia公司所开发的跨平台应用程序和UI开发框架,我们可以使用它很方便地开发出我们所需要的应用程序。最新的Qt已经是4.8.0版本了,本文以后将用VS2008+Qt来进行所有的应用程序开发。首先我们将介绍如何配置环境。 首先安装VS2008,最好安装完成之后打上SP1补丁,再安装上我们常用的VC助手(它可以给我们的编程带来很大的方便),之后可以从Noki...

2019-09-26 06:20:27 259

转载 【Qt学习】(二)第一个Qt程序

新建工程 我们按照上一节所说的办法,新建一个工程,工程名称命名为:First,即我们的第一个Qt应用程序。在弹出的“Qt GUI Project Wizard”中,我们直接下一步,在最后一步的时候,我们在Base Class一栏中,选择QWidget(基础窗口部件): 最后点击Finish,VS就为我们建立了新的工程,在Windows自带的解决方案...

2019-09-26 06:20:22 108

空空如也

空空如也

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

TA关注的人

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