摘要:
给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串。 返回符合要求的最少分割次数。 示例: 输入: "aab"输出: 1解释: 进行一次分割就可将 s 分割成 ["aa","b"] 这样两个回文子串 与131题目类似,但是用递归的话在某些测例上会超时,因此考虑使用dp 使用dp,首先考 阅读全文
摘要:
在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。 如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。 说 阅读全文
摘要:
多进程版本相对也很简单,父进程负责接收和转换套接字,接收后Fork出子进程去处理页面请求和返回所需求的页面。 首先是父进程: 父进程Accept后不对请求进行处理,而是直接关闭所连接的套接字 这是因为for后,父子进程间的文件描述符只是拷贝,他们都指向同一个套接字,对父进程来说,这个主动套接字是多余 阅读全文
摘要:
Leetcode136: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 时间O(n),空间O(1)的算法实在没想到,满脑子里都是排序或者引入map。 看了下答案巧妙的运 阅读全文
摘要:
直接在leetcode上做的,牛客上把词典wordDict改成了哈希表,懒得改了,牛客上的就没写。 思路: table[i][j]代表从字符串s的i到j位置([i,j])是否能为一个词典中的单词,为1表示可以,为0表示不行。 e.g. 首先初始化table表,即初始化table[0][x],在词典中 阅读全文
摘要:
用递归的话这两个题是很简单的。 在非递归的情况,使用迭代做这个两个题目,两个题目间的联系是很紧密的。 首先是LeetCode144,前序遍历二叉树: 前序遍历的顺序为:根,左,右。 对这个顺序下,很容易想到使用一个栈即可完成遍历,流程有: 1).根节点入栈 2).读取根节点出栈 3).右节点与左节点 阅读全文
摘要:
最简单版本的WebServer: 1.服务端初始化工作: a).创建主动套接字:initList(port) b).转为监听套接字:initList(port) c).等候和接受连接:Accept(listenfd,&clientaddr,&sizeof(clientaddr)); 2.处理客户端的 阅读全文