07 2015 档案

leetcode :Factorial Trailing Zeroes
摘要:Given an integern, return the number of trailing zeroes inn!.Note:Your solution should be in logarithmic time complexity.大致意思给一个n,判断n的阶乘后面有几个0。从1数到n,最... 阅读全文

posted @ 2015-07-15 16:06 远近闻名的学渣 阅读(114) 评论(0) 推荐(0)

系统级I/O
摘要:在unix系统中,要对一个文件进行操作,步骤为先根据文件名打开文件,得到一个文件描述符(通常为非负整数),然后根据文件描述对文件进行I/O操作,之后关闭文件。文件操作在系统中是这样的,每个进程都有一个打开文件表t1,系统中有两个所有文件共享的表t2,以及v1。 (1)表t1表示一个进程打开的所有文... 阅读全文

posted @ 2015-07-05 18:25 远近闻名的学渣 阅读(212) 评论(0) 推荐(0)

Floyd算法
摘要:Floyd算法是求任意图中任意两个节点的最短路径的算法,一般认为Floyd算法使用了动态规划策略。即对任意一条最短路径u ~v, 假如k在该路径中,则改最短路径可以表示为u ~k~v。设Di,j,k为从i到j的只以(1..k)集合中的节点为中间节点的最短路径的长度。若最短路径经过点k,则Di,j,k... 阅读全文

posted @ 2015-07-03 20:21 远近闻名的学渣 阅读(300) 评论(0) 推荐(0)

堆以及优先队列
摘要:堆分为大根堆与小根堆,这里以大根堆为例。PS:这里的堆只涉及二叉堆,斐波那契堆什么的。。智商不够并不能学会- - !定义: 二叉堆通常是一个用数组实现的完全二叉树。并且大根堆满足对于任何一颗子树,其孩子节点的key总是不会比根节点的大。所以堆顶元素(即树根)就是key最大的元素。堆应该支持的操作:... 阅读全文

posted @ 2015-07-03 18:50 远近闻名的学渣 阅读(366) 评论(0) 推荐(0)

socket编程
摘要:一、socket基础 多数操作平台都提供了一组接口使得程序员可以像使用文件一样读写socket。socket通信的基本过程为: (1)客户端: 申请socket-> connect到服务器(阻塞直到连接成功或者出错) -> 开始读写 -> 读写完毕关闭socket (2)服务器: 申请socke - 阅读全文

posted @ 2015-07-03 01:12 远近闻名的学渣 阅读(287) 评论(0) 推荐(0)

Dijkstra算法
摘要:Dijkstra算法是基础图论中非常重要的算法。算法能够算出某一个点到图中其他任何点的最短路劲及其权重,要求图中所有的边的权重都是非负值。算法中需要用到优先队列,优先队列的操作看这里算法维护两个顶点集合S,Q,以及一个估计最短路径数组d,d[i]值表示从源点到顶点i的估计最短路径。任意时刻d[i]都... 阅读全文

posted @ 2015-07-03 01:07 远近闻名的学渣 阅读(1516) 评论(0) 推荐(0)

leetcode:Implement strStr() & KMP 算法
摘要:# leetcode:Implement strStr() & KMP 算法---## 问题描述实现strstr(),即字符串匹配。使用KMP算法解决。但是其实暴力求解也跟KMP算法的速度是相差无几的,因为目标串太短了---## KMP算法与自动机---在编译原理的书上看见KMP算法的一种解释,将目... 阅读全文

posted @ 2015-07-02 19:05 远近闻名的学渣 阅读(225) 评论(0) 推荐(0)

C/C++ 链接与库
摘要:1, 链接 链接是为了支持分离编译,编译器将每个源文件(.c, .cpp ,.h)编译成可重定位的目标文件(.o),然后使用链接器将应该重定向的符号(即定义在其他文件的符号)重定向到正确的地址,并将.o文件合并成一个可执行的目标文件。 链接过程中对于局部变量,以及加了static的全局变量的处理... 阅读全文

posted @ 2015-07-02 12:26 远近闻名的学渣 阅读(184) 评论(0) 推荐(0)

导航