- 博客(64)
- 收藏
- 关注
原创 oj 中的 G++ 与 C++ 的区别
1、输出double类型时,如果采用G++提交,scanf采用%lf,prinf采用%f,否则会报错, C++,之所以可以很可能是 VC 扩充的,不是标准!2、使用GCC/G++的提醒: 根据ISO C++标准,在G++下,main函数的返回值必须是int,否则将会导致Compile Error(编译错误)的判答3、G++/GCC使用scanf、printf时注意引用,只引用不识别
2013-01-16 21:58:29
332
原创 线段树 : 区间更新 poj 3468 示例
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include
2013-01-16 21:25:34
330
原创 线段树 : hdu 1166 示例 [ 单点更新 ]
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include
2013-01-16 19:14:30
261
原创 拓扑排序 : hdu 1285 示例
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include
2013-01-16 14:14:26
222
原创 《Python 第四章》字典
字典* 创建和使用字典 * dict()>>> phonebook = {'Alice': '2341', 'Beth': '9102', 'Ceil': '3258'}>>> phonebook{'Beth': '9102', 'Alice': '2341', 'Ceil': '3258'}>>> phonebook['Beth']'9102'>>> items = [('nam
2013-01-16 13:06:18
232
原创 《计算机网络 4》 应用层
计算机网络 之应用层6.1 域名系统 DNS 6.1.1 域名系统概述 6.1.2 因特网的域名结构 6.1.3 域名服务器6.2 文件传送协议 6.2.1 FTP 概述 6.2.2 FTP 的基本工作原理 6.2.3 简单文件传送协议 TFTP6.3 远程终端协议 TELNET 6.4 万维网 WWW6.4.1 概述
2013-01-15 22:53:08
292
原创 Floyd-template 示例
#include #include #include #include #include #define BUG cout << "here\n";using namespace std;const int INF = 0x7fffffff;const int N = 105;int map[N][N];int path[N][N];int n, m;int s, t;
2013-01-15 20:29:19
240
原创 迪杰斯特拉 示例 : poj 2387 Til the Cows Come Home
/* 题意:一个农场有n(1 ~ 1000)个landmarks,有t(1 ~ 2000)条道路连接, 问Bessie要从编号为 n 的landmarks到编号为 1 的landmarks,最少得走多少的路程?*/#include #include #include #include #include #include #include #include #include
2013-01-15 19:41:16
267
原创 《Python 第三章》字符串
第3章 使用字符串 字符串的分割,联接,搜索。3.1 基本字符串操作 标准的序列操作 (索引,分片,判断成员资格,求长度,最值) 对字符串同样使用。3.2 字符串格式化>>> format = "Hello, %s. %s enough for ya?" # %s>>> values = ('world', 'Hot')>>> print format %valuesHe
2013-01-15 16:22:32
306
原创 《Python 第二章》列表和元组
Python最基本的数据结构 : 序列 『6种内建序列 - *元组和列表*』 元组vs列表 元组不能更改! 元组 做 字典的key,不能用列表!>>> edward = ['Uncle wang', 42]>>> john = ['John Smith', 50]>>> database = [edward, john]>>> database[['Uncle wang', 42
2013-01-15 13:38:55
253
原创 《Python 第一章》基础知识
第一章 基础知识1.1 简单使用和认识 python >>> 2**3 >>> pow(2, 3) >>> 2+8 >>> x = input("x: ") >>> print 'hello world' >>> print "hello world" >>> print 3 >>> print '3' >>> 0xAF
2013-01-14 18:48:24
326
原创 prim-普里姆 poj 1287 示例 [ 实现用到并查集 ]
prim算法 : 初始化-> 找最小值,更新 - 重复 找 n-1 次。#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #inc
2013-01-14 13:18:43
267
原创 Kruskal poj 1287 示例 [ 实现用到并查集 ]
克鲁斯卡尔算法 (加边法) G(V, E) 带权连通无向图 (1), 将 G 中的边按权值从小到大依次选取,若选取的边使生成树不构成回路,并入 TE 中。 (2), 从剩下的边中选取边,执行操作 (1), 如此进行下去,直到 TE 中包含 n-1 条边为止,此时的T,此时的 T ,即为最小生成树。Kruskal 的实现需要用到并查集。#include #include #
2013-01-14 13:01:21
266
原创 好公司职位要求
百度-熟悉Linux(类Unix)操作系统,熟悉TCP/IP协议 -精通或熟练掌握Linux环境下的C/C++/PERL/PYTHON/SHELL等1至2种语言,对计算机体系结构有一定理解 -具备很强的分析和解决问题的能力,对于攻关疑难问题具有强烈的兴趣 -善于学习新的知识,善于思考,勤于动手,不怕繁琐,重视流程规范 -有相关系统开发经验的更好 职位要求:热爱互联网,对搜索技术、探
2013-01-14 00:57:26
301
原创 Socket
什么是Socket Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。 Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的 Socket数据传
2013-01-14 00:48:19
289
原创 《第 14 章》 信号量,共享内存和消息队列
IPC *1 信号量 : 用于管理对资源的访问。 *2 共享内存 : 用于在程序之间高效的共享数据。 *3 消息队列 : 在程序之间传递数据的一种简单方法。 @1 信号量 『 编写线程程序时,不管他是运行在多用户系统上,多进程系统上,还是运行在多用户 多进程的系统上,通常发现程序存在一部分临界代码,我们确保只有一个进程可以进入 这个临界代码并拥有对资源独占式
2013-01-14 00:45:54
274
原创 《第 13 章 》 进程间通信 : 管道
第 13 章 进程间通信 : 管道 第11章 我们看到进程间发送消息的非常简单的方法 :使用信号。 但是传送的信息只限于一个信号值。 大纲 { *1 管道的定义 *2 进程管道 *3 管道调用 *4 父进程与子进程 *5 命名管道 : FIFO *6 客户 / 服务器架构 } *1, 什么是管道? 当从
2013-01-14 00:44:23
357
原创 《第 12 章》 POSIX 线程
fork调用来创建新进程的代价太高。 *1 在进程中创建新线程 *2 在一个进程中同步线程之间的数据访问 *3 修改线程属性 *4 在同一个进程中,从一个线程中控制另一个线程。 @1,程序中的多个执行路线就叫做线程。线程是进程内部的一个控制序列。 @2, 弄清楚fork系统调用和创建新线程之间的区别非常重要。 当进程执行fork调用时,将创建出该进程的一份
2013-01-14 00:43:42
349
原创 《第 11章》 进程与信号
*1 进程的结构,类型和调度。 *2 用不同的方法启动新进程 *3 父进程,子进程和僵尸进程 *4 什么是信号以及如何使用它们。 @1,什么是进程? 进程是由程序代码,数据,变量(占用着系统内存),打开的文件(文件描述符)和环境组成。 Linux系统会在进程之间共享程序代码和系统函数库。所在在任何时刻内存中都只有代码 的一份副本。 @2,
2013-01-14 00:43:01
236
原创 《第十章》 调试
调试 *1 使用GDB和其他工具进行调试 *2 断言 *3 内存调试 @1,OS分配给程序的内存一般都会比程序实际需要使用的大一些。如果非法内存访问 出现在这部分内存区域内,硬件就可能检测不到。 如果想捕捉到数组访问方面的错误,最好增加数组元素的大小,因为这样同时也增加 错误的大小。如果只是在数组的结尾之后读取一个字节,我们很有可能看不到有错误
2013-01-14 00:38:47
308
原创 《第九章》 开发工具
Linux哲学体系 * make命令和makefile文件 * 使用patch和tar命令来发布软件 * 开发环境 *1, 多个源文件带来的问题 @1,make的选项和参数 -k : make命令发现错误之后仍然继续执行。 -n : 作用是让make命令输出将要执行的操作步骤,而不真正执行。 -f : 告诉make命令把哪一个文件作为
2013-01-14 00:38:05
245
原创 《第七章》 数据管理 --之 文件锁定
文件锁定是多用户多任务OS中非常重要的部分。 *1,程序经常需要共享数据,这通常是通过文件来实现的。 当一个程序正在对文件进行write操作,文件就会进入一个暂时状态, 在这个状态下,如果另外一个程序尝试读这个文件,它就会自动停下来 等待这个状态的结束。 *2,Linux提供了多种特性来实现文件锁定。其中最简单的方法 方法一 :就是以”原子操作“
2013-01-14 00:37:03
324
原创 《第七章》 数据管理 --之 动态内存分配
第七章 数据管理 * 资源分配的管理方式 * 如何对可能被多个用户同时访问的文件进行处理 *1 动态内存管理 : 可以做什么以及Linux不允许做什么 *2 文件锁 : 协调锁,共享文件的区域锁定和避免死锁 *1 : UNIX以一种非常干净的方式管理内存,Linux程序不允许直接访问物理内存。 Linux 提供了内存保护
2013-01-14 00:35:11
255
原创 《Linux 11》 文件共享服务器(了解) [用户管理(略)]
『*1 Windows 与 Linux 文件共享 --- Samba*2 FTP应用 -- vsftpd』Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。 在UNIX系统中,Samba是通过服务器消息快协议(SMB)在网络上的计算机之间共享文件和打印服务的软件包。SMB协议是一种客户端服务器协议,位于应用层,是Window
2013-01-14 00:34:13
246
原创 《Linux 十》 网络设置
课程大纲 『 Robert_Chan *1 互联网寻址过程 *2 Linux网络管理配置文件及命令』TCP/IPHttp,Ftp,Smtp TCP 和 UDP IP,ICMP,IGMP ARP,RARP ATM,FDDI,ISDN ----------------TCP/IP物理层 : 网卡OSI物理层 : 网卡 数据链路层
2013-01-14 00:33:20
358
原创 《Linux 九》Shell 讲解
课程大纲 『 Shell编程语法 Shell脚本调试 Shell应用实例』一个简单的shell程序 shell结构 : 1. #!指定执行脚本的shell 2. #注释行 3. 命令和控制结构创建shell程序的步骤: 第一步 : 创建一个包含命令和控制结构的文件。 第二步 : 修改这个文件的权限使它可以执行。 使用chm
2013-01-14 00:30:19
333
原创 《Linux 八》 文件系统管理
Linux文件系统管理课程大纲 『 文件系统构成及命令 硬盘分区及管理 磁盘配额 备份与恢复』文件系统构成 『 *1 /usr/bin、/bin : 存放所有用户可以执行的命令 *2 /usr/sbin、/sbin : 存放只有root可以执行的命令 *3 /home : 用户缺省宿主目录 *4 /proc : 虚拟文件系统,存放当前进程信息 [保存在
2013-01-14 00:29:04
234
原创 《Linux 七》 进程管理
课程大纲 『 进程的概念 进程管理命令 计划任务』进程和程序的区别 1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程, 它是动态概念,有一定的生命期,是动态产生和消亡的。 2、程序和进程无一一对应关系。一个程序可以由多个进程共用;另一方面,一个 进程在活动中有可顺序地执行若干个程序。父进程与子进程 1、子进程是由一个进
2013-01-14 00:27:37
218
原创 《Linux 六》 软件包管理
知识点总结 『 #1 软件包管理的思路与方法 #2 RedHat系Linux软件包管理 * 二进制包管理 : RPM, YUM * 源代码包管理 * 脚本安装 #3 Dabian系Linux软件包管理 { APT包管理 [多] 搜索软件包 apt-cache search 软件包信息 apt-cache show
2013-01-14 00:26:17
296
原创 《Linux 五》 引导流程 2 [剖析inittab+grub+小结]
inittab 文件剖析 #1 grep -v "^#" /etc/inittab | more #2 man inittab id #3 在inittab中,所有条目采取以下格式: id:run-levels:action:process id:标识符,一般为两位字母或数字 run-levels:指定运行级别,可
2013-01-14 00:24:45
264
原创 《Linux 五》 引导流程 1
Linux 引导流程课程大纲『 #1 Linux引导流程 #2 Linux运行级别 #3 Linux启动服务管理 #4 GRUB配置与应用 #5 启动故障分析与解决』系统引导流程 『 固件 firmware(CMOS/BIOS) → POST 加电自检 ↓ 自举程序 BootL
2013-01-14 00:22:55
322
原创 《 Linux 四 》 Vim (我个人的总结,很好!)
www.vim.org 命令 :set nu要想更快的使用 vi 我们要掌握几组命令 { #1,[插入命令] a, A, i, I, o, O #2,[定位命令] h, j, k, l, $, 0, H, M, L :set nu 设置行号 :setnonu 取消行号 gg 到第一行 G 到最后一行 nG 到第n行
2013-01-14 00:20:28
354
原创 《Linux 三》 常用命令 [ 2 ]
压缩解压命令 {#1 gzip 命令所在路径:/bin/gzip 语法:gzip 选项 [文件] 功能描述:压缩文件 特点 : 1, 只能压缩文件[not d] 2, 不保留源文件#2 gunzip / gzip -d 语法:gunzip 选项 [压缩文件] 功能描述:解压缩.gz的压缩文件 范例: $ gunzip file1.
2013-01-14 00:19:06
245
原创 《Linux 三》 常用命令 [ 1 ]
课程大纲 { *1 文件处理命令 [ ls, cp, mv, rm, cat, ln] *2 权限管理命令 [ chmod u + r g - w o = x, chown, chgrp, umask ] *3 文件搜索命令 [ which, find, locate, updatedb, grep ] *5 压缩解压命令 [ gzip, gunz
2013-01-14 00:18:05
374
原创 《Linux 二》 Linux 的 安装
1* 总纲 { #1,Linux 系统安装流程 #2,Linux 文件系统结构及分区设置 #3,VMware 虚拟机软件应用 #4,远程登陆工具}2* 硬盘 : { sd : sda sdb sdc hd : hda hdb hdc}root -> 树根3* 对比一下 { /home/hp D:\program files (
2013-01-14 00:16:17
206
原创 《Linux 一》 Linux 应用与发展
李明linux 学习笔记一, Linux 应用与发展课程大纲 { Unix/linux 发展历史 自由软件 Linux应用领域 Linux学习方法}Multics -> unicx -> unix [unix是小而精巧的意思]unix用 C语言重写,有个很好的移植性! 因为汇编有很大的对硬件的依赖性!AIX [
2013-01-14 00:15:04
294
原创 X/Open规范 与 POSIX 标准
X/Open国际联盟有限公司是一个欧洲基金会,它的建立是为了向UNIX环境提供标准。它主要的目标是促进对UNIX语言、接口、网络和应用的开放式系统协议。它还促进在不同的UNIX环境之间的应用程序的互操作性,以及支持对电气电子工程师协会(IEEE)对UNIX的可移植操作系统接口(POSIX)规范。在欧洲,X/Open组织将各种UNIX标准汇集到一起,包括新近研究的通用开放系统环境(COSE,Co
2013-01-14 00:13:55
835
原创 《linux程序设计 - 第四章》 [ 程序参数 / 环境变量 / 日期与时间]
【程序参数】相关int main(int argc, char *argv[])getopt(), getopt_long(), 【环境变量】相关getenv(),putenv()environ 变量【日期与时间 】相关#include #include #include #includ
2013-01-14 00:12:22
266
原创 linux进程间通讯的几种方式
linux进程间通信(IPC)有几种方式,下面将将简单的简述一下: 一。管道(pipe) 管道是Linux支持的最初IPC方式,管道可分为无名管道,有名管道等。 (一)无名管道,它具有几个特点: 1) 管道是半双工的,只能支持数据的单向流动;两进程间需要通信时需要建立起两个管道; 2) 无名管道使用pipe()函数创建,只能用于父子进程或者兄弟
2013-01-14 00:10:29
272
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人