摘要:
这道题和之前的dfs+剪枝很像,但是有一个问题,就是如何去重 按道理前后左右都可以走,如果能走回去那不就走个不停了 但其实可以这样去重,第一次走到某个格子继续走,其他情况如果发现这个格子被走过直接结束 如何记录这个坐标呢,一开始傻了,想搞个hashset用来存放,但是问题是不太好放,于是发现可以再搞 阅读全文
摘要:
看到之后觉得 要么是回溯法,要么是深度优先搜索+剪枝 写的回溯法,但是好像没太搞出来 一个是怎么记录这种二维坐标,傻了,一开始还记录的是 int[][]的数组,其实直接记录i j两个参数就行 二是怎么查重,一开始想着用hashset,但是二维的感觉不太好弄,其实可以把已经访问过的地方置空格,访问完后 阅读全文
摘要:
在浏览器中输入url到显示主页的过程 总体来说分为以下几个过程: DNS解析 TCP连接 发送HTTP请求 服务器处理请求并返回HTTP报文 浏览器解析渲染页面 连接结束 状态码: 2开头成功 3开头重定向 4/5开头错误 各个协议间的关系: HTTP 长连接,短连接 HTTP 无状态 cookie 阅读全文
摘要:
七层协议和TCP/IP协议簇 OSI七层协议和Tcp/ip四层协议 应用层:应用程序间通信规则 DNS:建立ip地址和域名之间关系 Telnet:远程管理协议,是不安全的,与此相对SSH是安全的 FTP:传文件的协议 HTTP:超文本传输协议 传输层(TCPIP中的TCP):端到端的数据传输服务 T 阅读全文
摘要:
最近做到了两个笔试中的这种题目,这里备注一下 大概就是需要你维护一个队列,然后根据一个什么过程模拟这个流程的进行 一个是华为笔试的题目: 这道题实际上就是维护一个队列,然后查表 然而题意确实很复杂,写输入输出也要很久,总的来说还是很难搞 import java.util.*; public clas 阅读全文
摘要:
平方函数:Math.pow(a,b) new一个数组: int[] index=new int[3];//已知容量 int[] index={2,3,4};//已知数据int[][] index2=new int[2][3];//二维数组 new一个arraylist List<String> li 阅读全文
摘要:
笔试都是acm模式,需要自己处理输入输出 注意先把笔试中的编译器修改成java 首先注意类名都是规定好的,一般是Main类,最终直接new一个对象输出结果 如果一开始我们命名是Solution1 有三处地方需要修改 输入要先完全输入完再输出 上次阿里笔试发现的问题,不要在输入过程中往控制台打印东西 阅读全文
摘要:
参考这篇文章,很生动:https://zhuanlan.zhihu.com/p/158537313 有点像发布订阅,有不同之处,但是要实现的功能很像 举了一个游戏的例子 Hero类走格子,有怪物类,宝物类,走到格子时需要判断是否进入这些格子并且产生效果。 传统想法之一(拉取):怪物类隔100ms判断 阅读全文
摘要:
结构型模式是用来设计程序的结构的。结构型模式就像搭积木,将不同的类结合在一起形成契合的结构。 听起来没那么好懂的样子 代理模式的基本思路 代理模式就是给一个对象提供一个代理,并由代理对象控制对原对象的引用。它使得客户不能直接与真正的目标对象通信。代理对象是目标对象的代表,其他需要与这个目标对象打交道 阅读全文
摘要:
在我们平常创建对象的时候,都是通过关键字 new 来实现的,例:Class A = new A() 。 在一些情况下,要创建的对象需要一系列复杂的初始化操作,比如查配置文件、查数据库表、初始化成员对象等,如果把这些逻辑放在构造函数中,会极大影响代码的可读性。不妨定义一个类来专门负责对象的创建,这样的 阅读全文