基础知识
StableAndCalm
这个作者很懒,什么都没留下…
展开
-
进程管理(二)
1.经典进程同步问题2.进程通信3.线程经典进程同步问题生产者—消费者问题(producer – consumer Problem)哲学家就餐问题(Dining-Philosophers Problem)读者-写者问题(Readers and Writers Problem)生产者—消费者问题利用记录型信号量解决生产者—消费者问题生产者和消费者之间应原创 2012-08-01 16:09:10 · 3092 阅读 · 0 评论 -
进程管理(一)
操作系统前言摘录1.进程的基本概念2.进程同步进程的基本概念程序顺序执行时的特征:(1) 顺序性:处理机的操作严格按照程序所规定的顺序执行,即每一操作必须在上一个操作结束之后开始。(2) 封闭性:程序是在封闭的环境下执行的,即程序运行时独占全机资源,资源的状态(除初始状态外)只有本程序才能改变它。程序一旦开始执行,其执行结果不受外界因素影原创 2012-07-31 15:41:58 · 3029 阅读 · 0 评论 -
搭建小型搜索引擎---原理及工具
简单记录一下搜索引擎的基本原理和搭建步骤。搜索引擎基本框架搭建搜索引擎主要分为三个步骤:Web信息的搜集;信息的索引与检索;Web服务提供接口。1.信息搜集信息搜集的原理是将互联网看成一个大的图,则信息搜集可以看成是图的遍历,目的是为了获取高质量的网页,其搜集的策略就有广度优先搜索和深度优先搜索及网站采集和全局URL采集等。推荐的开源信息搜集原创 2012-06-12 20:59:37 · 8394 阅读 · 1 评论 -
由LCA引发的问题--RMQ,Tarjan,并查集等
引入LCA问题及其在线和离线算法 两个月前有一次一个电话面试问到了一个问题:“怎样求二叉树中距离两个叶子节点最近的祖先节点。”当时不会,后来在网上查了查发现是一个比较经典的题目,也有几种算法可以解决这个问题,我学习了一下,在这儿记下来。这个问题更宽泛的定义是:如何求树(不限于二叉树)中两个节点(不限于叶子节点)的最近公共祖先节点。这个问题被称为LCA(Lowest Commo原创 2012-06-11 14:03:21 · 2826 阅读 · 0 评论 -
Socket工作原理及流程
本文转载自:http://goodcandle.cnblogs.com/archive/2005/12/10/294652.aspx什么是TCP/IP、UDP? TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WANs)设计的。转载 2012-06-04 10:00:44 · 7301 阅读 · 0 评论 -
基本二叉树操作
涉及的内容包括递归前序,中序和后序遍历;非递归前中后序遍历;二叉树的层次遍历;求二叉树的深度;求二叉树的结点数。 其中二叉树的非递归遍历都是用的C++中的stack和set容器,方法比较笨(同时想到的另一个方法是修改二叉树的数据结构,在节点的结构体中增加一个标志位,在遍历的时候当节点输出后设置标志位为访问过,其效果与利用set容器一样,但相对方便些)。二叉树的层次遍历用到了vector可原创 2012-05-04 20:35:24 · 801 阅读 · 0 评论 -
HTTP协议代码及含义
[Informational 1xx]100=”Continue”101=”Switching Protocols”[Successful 2xx]200=”OK”201=”Created”202=”Accepted”203=”Non-Authoritative Information”204=”No Content”205=”Reset Content”转载 2012-04-20 10:48:24 · 2709 阅读 · 0 评论 -
约瑟夫环问题
约瑟夫问题如下:已知n个人(n>=1)围坐一圆桌周围,从1开始顺序编号。从序号为1的人开始报数,顺时针数到m的那个人出列。他的下一个人又从1开始报数,数到m的那个人又出列。依此规则重复下去,直到所有人全部出列。请问最后一个出列的人的编号。//C Version One-way circular linked list(单向循环链表)#include #include t原创 2011-11-23 09:10:43 · 1254 阅读 · 0 评论 -
ANSI字符集和Unicode字符集
在计算机中字符通常并不是保存为图像,每个字符都是使用一个编码来表示的,而每个字符究竟使用哪个编码代表,要取决于使用哪个字符集(charset)。 在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7 bits来表示一个字符,总共表示128个转载 2011-09-08 23:51:56 · 2565 阅读 · 0 评论 -
Google云计算经典文章
转载自:云计算不得不看的4大经典文章1. 论文题目:The Anatomy of a Large-Scale Hypertextual Web Search Engine 论文作者:Sergey brin, Lawrence Page (1998) 介绍: 这篇论文是Google的创始人布林和佩奇。 文章介绍了Google大型搜索引擎的原型,论文解决了以下问题,转载 2012-09-19 16:18:23 · 1856 阅读 · 0 评论 -
动态规划算法及代码
动态规划 算法总体思想 动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题。但是经分解得到的子问题往往不是互相独立的。不同子问题的数目常常只有多项式量级。在用分治法求解时,有些子问题被重复计算了许多次。如果能够保存已解决的子问题的答案,而在需要时再找出已求得的答案,就可以避免大量重复计算,从而得到多项式时间算法。动态规划基本步骤:(1)找出最转载 2011-11-21 17:01:36 · 25663 阅读 · 3 评论 -
OSI七层网络模型,TCP/IP四层网络模型与网络协议解析
OSI七层网络模型与TCP/IP四层网络模型1. OSI网络分层参考模型 网络协议设计者不应当设计一个单一、巨大的协议来为所有形式的通信规定完整的细节,而应把通信问题划分成多个小问题,然后为每一个小问题设计一个单独的协议。这样做使得每个协议的设计、分析、时限和测试比较容易。协议划分的一个主要原则是确保目标系统有效且效率高。为了提高效率,每个协议只应该注意没有被其他协议处理过的那部分通转载 2012-04-18 09:07:23 · 7494 阅读 · 0 评论 -
寻找特定数目元素的中间元素及排序相关问题
今天同学问了一道原来算法课上的题目,看了笔记后顺便回忆一下那时的解法,记录几个比较简单的问题:1.给出找5个元素中间元素的算法,分析最坏情况下需要多少次比较。2.把5个元素排序,证明最坏情况下需要多少次比较。3.任何一个基于“比较”的内部排序算法,若对6个元素进行排序,则在最坏情况下至少需要多少次比较。1. 6次比较。原创 2012-09-18 20:09:01 · 1327 阅读 · 0 评论 -
数据结构(C语言版)摘录--树和二叉树
第六章 树和二叉树树(Tree)是n(n>=0)个结点的有限集。在任意一棵非空树中:(1)有且仅有一个特定的称为根(Root)的结点;(2)当n>1时,其余结点可分为m(m>0)个互不相交的有限集T1,T2,。。。,Tm,其中每一个集合本身又是一棵树,并且称为根的子树(SubTree)。森林(Forest)是m(m>=0)棵互不相交的树的集合。对树中每个结点而言,其子树的集原创 2012-08-07 21:39:42 · 2101 阅读 · 0 评论 -
存储器管理(二)
虚拟存储器的基本概念请求分页存储管理方式页面置换算法请求分段存储管理方式 虚拟存储器的基本概念前面所介绍的各种存储器管理方式有一个共同的特点,即它们都要求将一个作业全部装入内存后方能运行,于是,出现了下面这样两种情况:(1) 有的作业很大,其所要求的内存空间超过了内存总容量,作业不能全部被装入内存,致使该作业无法运行。(2) 有大量作业要求运行,但由于内存容量不原创 2012-08-04 21:46:48 · 4765 阅读 · 0 评论 -
字符串逆置
记录一下字符串逆置的代码:此版用到了另一个字符数组,以保存逆置后的结果,开始时只是定义了两个字符指针来保存输入的字符串,编译总是失败,看了一下《C语言实用教程》里面说到,char *p scanf("%s",p);这种定义方式是错误的,指针需要先指向一个地址。于是就定义了两个字符数组来保存结果。这样定义一个常量N为50,但是感觉缺少了一些灵活性。#include #defi原创 2011-11-28 10:49:19 · 4921 阅读 · 1 评论 -
算法的分类
算法有多种分类方式,可以根据实现方式分类,也可以根据设计方法分类,还可以根据应用领域进行分类。不同的分类方式有不同的特点。按照实现方式分类,可以将算法分为递归算法、迭代算法、逻辑算法、串行算法和并行算法和分布式算法、确定性算法和非确定性算法、精确算法和近似算法等。递归算法(recursion algorithms)是一种不断调用自身直到指定条件满足为止的算法。这是一种重要的算法思想转载 2011-11-21 16:56:59 · 6697 阅读 · 0 评论 -
数据结构(C语言版)摘录--图
第七章 图图(Graph)是一种较线性表和树更为复杂的数据结构。图的定义和术语图是由一个顶点集 V 和一个弧集 VR构成的数据结构。Graph = (V , VR )其中,VR={| v,w∈V 且 P(v,w)},表示从 v 到 w 的一条弧,并称 v 为弧尾,w 为弧头。谓词 P(v,w) 定义了弧 的意义或信息。由于“弧”是有方向的,因此称由顶点集和弧集构成的图为原创 2012-08-09 11:08:26 · 3804 阅读 · 0 评论 -
存储器管理(一)
1.存储器的层次结构2.程序的装入和链接3.连续分配方式4.基本分页存储管理方式5.基本分段存储管理方式存储器的层次结构多级存储结构对于通用计算机而言,存储层次至少应具有三级:最高层为CPU寄存器,中间为主存,最底层是辅存。在较高档的计算机中,还可以根据具体的功能分工细划为寄存器、高速缓存、主存储器、磁盘缓存、固定磁盘、可移动存储介质等6层。如图4-1所原创 2012-08-03 14:27:24 · 3666 阅读 · 0 评论 -
Lucence全文搜索框架
转载自:http://topmanopensource.javaeye.com/blog/513061 1 lucene简介1.1 什么是luceneLucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。1.2 lucene能做什么转载 2012-06-12 10:56:10 · 3164 阅读 · 0 评论