随笔分类 -  面经

摘要:这个简直是每次面试必问的一个知识点了,又三次握手四次挥手的过程能带出一大堆问题来,个个都能问得你猝不及防,什么第三次确认的必要性,什么time_wait的作用啦,什么主动关闭被动关闭啦,什么发送内容啦,等等等等。今天我们就来好好总结一下这整个的过程。 建立TCP需要三次握手才能建立,而断开连接则需要 阅读全文
posted @ 2016-10-13 12:34 SarahLiu77 阅读(379) 评论(0) 推荐(0)
摘要:这两个方法看起来都是讲一个资源附加到服务器端的请求,但其实是不一样的。一些狭窄的意见认为,POST方法用来创建资源,而PUT方法则用来更新资源。这个说法本身没有问题,但是并没有从根本上解释了二者的区别。事实上,它们最根本的区别就是:POST方法不是幂等的,而PUT方法则有幂等性。那这又衍生出一个问题 阅读全文
posted @ 2016-10-13 10:16 SarahLiu77 阅读(5505) 评论(0) 推荐(1)
摘要:本文总结&分享网络编程中涉及的长连接、短连接概念。 关键字:Keep-Alive,并发连接数限制,TCP,HTTP 一、什么是长连接 HTTP1.1规定了默认保持长连接(HTTP persistent connection ,也有翻译为持久连接),数据传输完成了保持TCP连接不断开(不发RST包、不 阅读全文
posted @ 2016-10-13 09:49 SarahLiu77 阅读(1103) 评论(0) 推荐(0)
摘要:短连接与长连接 通俗来讲,浏览器和服务器每进行一次通信,就建立一次连接,任务结束就中断连接,即短连接。相反地,假如通信结束(如完成了某个HTML文件的信息获取)后保持连接则为长连接。在HTTP/1.0中,默认使用短连接。从HTTP/1.1起,默认使用长连接,这样做的优点是显而易见的,一个网页的加载可 阅读全文
posted @ 2016-10-13 09:36 SarahLiu77 阅读(639) 评论(0) 推荐(0)
摘要:这是面试中一道非常经典的问题。 当你在浏览器中输入一个网址,浏览器的处理过程如下: 下面对每个环节做进一步分析: 01 浏览器查找该域名的 IP 地址 浏览器缓存 首先是查找浏览器缓存,浏览器会缓存DNS记录一段时间,不同浏览器保存的时常不等(2分钟到30分钟不等)。 系统缓存 如果在浏览器缓存里没 阅读全文
posted @ 2016-10-12 23:23 SarahLiu77 阅读(15534) 评论(0) 推荐(3)
摘要:为了减轻使用机器语言编程的痛苦,人们进行了一种有益的改进:用一些简洁的英文字母、符号串来替代一个特定的指令的二进制串,比如,用“A D D”代表加法,“M O V”代表数据传递等等,这样一来,人们很容易读懂并理解程序在干什么,纠错及维护都变得方便了,这种程序设计语言就称为汇编语言,即第二代计算机语言 阅读全文
posted @ 2016-10-12 23:20 SarahLiu77 阅读(1317) 评论(0) 推荐(0)
摘要:一、问题描述 输入一棵二叉搜索树,现在要将该二叉搜索树转换成一个排序的双向链表。而且在转换的过程中,不能创建任何新的结点,只能调整树中的结点指针的指向来实现。 二、实现思路 在二叉搜索树中,每个结点都有两个分别指向其左、右子树的指针,左子树结点的值总是小于父结点的值,右子树结点的值总是大于父结点的值 阅读全文
posted @ 2016-10-12 22:48 SarahLiu77 阅读(374) 评论(0) 推荐(0)
摘要:这个问题可以衍生出很多扩展性的问题: 给定一个单链表, 1.如何判断是否有环 2.如何知道环的长度 3.如何找到环的入口 4.整个链表的长度是多少 相应的解法如下: 问题1时后面所有问题的根问题,解决这个问题一般用到快慢指针,一个fast指针,一个slow指针,两个指针同时指向单链表的头结点,然后f 阅读全文
posted @ 2016-10-11 16:00 SarahLiu77 阅读(423) 评论(0) 推荐(0)
摘要:两个链表都没有环的情况下,判断是否相交大约有以下三种解法: (1)判断第一个链表的后半部分节点是否在第二个链表中; (2)把第二个链表连接到第一个链表后面,判断整个链表是否有环,有环即为相交。 (3)先遍历第一个链表,记住第一个链表的最后一个节点,然后遍历第二个链表,找到最后一个节点,与第一个链表的 阅读全文
posted @ 2016-10-11 15:31 SarahLiu77 阅读(425) 评论(0) 推荐(0)
摘要:1.1.2 正文 SQL Injection:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。 具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一 阅读全文
posted @ 2016-09-21 15:08 SarahLiu77 阅读(10024) 评论(0) 推荐(1)
摘要:Linux命令篇 1.查看一个文件的后100行的命令: tail -n 100 Linux下查看文件前几行一般用head -n xx,查看后面几行用tail -n xx。除此之外,还有: tail -n +1000:从1000行开始显示,显示1000行以后的 如果要查看这个文件中间的某几行,命令如下 阅读全文
posted @ 2016-09-18 17:36 SarahLiu77 阅读(10719) 评论(0) 推荐(1)