leetcode

002addTwoNumbers

本秂侑毒 提交于 2020-04-05 17:33:52
刚开始的时候没太懂题目意思,就利用LeetCode的return提交进行测试,但是提交后发现结果是数组? 尝试用数组的方法,又报错。。。 后来才想到,LeetCode会不会在后面做些其他操作进行转换呀,测试了后发现确实是这样, 然后又测试发现LeetCode上可以使用console.log进行打印查看打印结果。。。快吐血了有没有 这题教我们使用链表,感觉这题比较妙的地方在与使用了carry,可以将本轮运算结果的进位放至下一轮, /** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } */ /** * @param {ListNode} l1 * @param {ListNode} l2 * @return {ListNode} */ var addTwoNumbers = function(l1, l2) { let result = new ListNode(null) let re = result,carray = 0,s while(l1||l2||carray) { const x = l1?l1.val:0 const y = l2?l2.val:0 s= x+y+carray re.next = new

LeetCode 8. 字符串转换整数 (atoi)

自闭症网瘾萝莉.ら 提交于 2020-04-03 21:21:07
我的LeetCode: https://leetcode-cn.com/u/ituring/ 我的LeetCode刷题源码[GitHub]: https://github.com/izhoujie/Algorithmcii LeetCode 8. 字符串转换整数 (atoi) 题目 请你来实现一个 atoi 函数,使其能将字符串转换成整数。 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。接下来的转化规则如下: 如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字字符组合起来,形成一个有符号整数。 假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成一个整数。 该字符串在有效的整数部分之后也可能会存在多余的字符,那么这些字符可以被忽略,它们对函数不应该造成影响。 注意:假如该字符串中的第一个非空格字符不是一个有效整数字符、字符串为空或字符串仅包含空白字符时,则你的函数不需要进行转换,即无法进行有效转换。 在任何情况下,若函数不能进行有效的转换时,请返回 0 。 提示: 本题中的空白字符只包括空格字符 ' ' 。 假设我们的环境只能存储 32 位大小的有符号整数,那么其数值范围为 [−2^31, 2^31 − 1]。如果数值超过这个范围,请返回 INT_MAX (2^31 − 1) 或 INT_MIN (−2^31)

LeetCode 289. 生命游戏

一世执手 提交于 2020-04-02 18:30:16
我的LeetCode: https://leetcode-cn.com/u/ituring/ 我的LeetCode刷题源码[GitHub]: https://github.com/izhoujie/Algorithmcii LeetCode 289. 生命游戏 题目 根据 百度百科 , 生命游戏 ,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机。 给定一个包含 m × n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态:1 即为活细胞(live),或 0 即为死细胞(dead)。每个细胞与其八个相邻位置(水平,垂直,对角线)的细胞都遵循以下四条生存定律: 如果活细胞周围八个位置的活细胞数少于两个,则该位置活细胞死亡; 如果活细胞周围八个位置有两个或三个活细胞,则该位置活细胞仍然存活; 如果活细胞周围八个位置有超过三个活细胞,则该位置活细胞死亡; 如果死细胞周围正好有三个活细胞,则该位置死细胞复活; 根据当前状态,写一个函数来计算面板上所有细胞的下一个(一次更新后的)状态。下一个状态是通过将上述规则同时应用于当前状态下的每个细胞所形成的,其中细胞的出生和死亡是同时发生的。 示例: 输入: [ [0,1,0], [0,0,1], [1,1,1], [0,0,0] ] 输出: [ [0,0,0], [1,0,1], [0,1,1],

【leetcode】1312. Minimum Insertion Steps to Make a String Palindrome

こ雲淡風輕ζ 提交于 2020-03-31 18:18:14
题目如下: Given a string s . In one step you can insert any character at any index of the string. Return the minimum number of steps to make s palindrome. A Palindrome String is one that reads the same backward as well as forward. Example 1: Input: s = "zzazz" Output: 0 Explanation: The string "zzazz" is already palindrome we don't need any insertions. Example 2: Input: s = "mbadm" Output: 2 Explanation: String can be "mbdadbm" or "mdbabdm". Example 3: Input: s = "leetcode" Output: 5 Explanation: Inserting 5 characters the string becomes "leetcodocteel". Example 4: Input: s = "g" Output: 0 Example

[LeetCode] 855. Exam Room 考试房间

别等时光非礼了梦想. 提交于 2020-03-31 01:34:16
In an exam room, there are `N` seats in a single row, numbered `0, 1, 2, ..., N-1`. When a student enters the room, they must sit in the seat that maximizes the distance to the closest person. If there are multiple such seats, they sit in the seat with the lowest number. (Also, if no one is in the room, then the student sits at seat number 0.) Return a class ExamRoom(int N) that exposes two functions: ExamRoom.seat() returning an int representing what seat the student sat in, and ExamRoom.leave(int p) representing that the student in seat number p now leaves the room. It is guaranteed that any

程序员一般都浏览什么网站

扶醉桌前 提交于 2020-03-30 13:59:19
程序员作为一个经常和互联网打交道的人群,他们喜欢浏览那些网站呢?不爱敲代码的程序猿整理了以下网站供大家参考,排名不分先后: 0. Google https://google.com 这个不用多说了吧。 1.GitHub 开发者最最最重要的网站:https://github.com 这个不用多说了吧,代码托管网站,上面有很多资源,想要什么轮子,上去搜就好了。并且呢,上面有很多优秀的程序员,你可以在这里交到很多好朋友喔。 2. 掘金 帮助开发者成长的技术社区:https://juejin.im 现在国内优质的开发者交流学习社区,可以去看大佬们写的文章,也可以自己分享学习心的,与更多开发者交流。认识更多的小伙伴儿,提升个人影响力。 3. 算法学习 LintCode https://www.lintcode.com/ 算法学习网站,上去每天刷两道算法题,走遍天下都不怕。 4. 算法学习 LeetCode https://leetcode.com/ 也是算法题网站,同上。 5. 算法学习 LeetCode 中文站 https://lingkou.com/ 这个是上面算法题网站的中文站点,英文不好的可以刷这个,英文好的推荐去刷英文网站的题目,还能提升英语能力。 6. 牛客网 面经和刷面试题:https://www.nowcoder.com 各个公司的面试题和面经分享,找工作前认真刷一刷

[LeetCode] 937. Reorder Data in Log Files 日志文件的重新排序

ぐ巨炮叔叔 提交于 2020-03-30 08:18:49
You have an array of `logs`. Each log is a space delimited string of words. For each log, the first word in each log is an alphanumeric identifier . Then, either: Each word after the identifier will consist only of lowercase letters, or; Each word after the identifier will consist only of digits. We will call these two varieties of logs letter-logs and digit-logs . It is guaranteed that each log has at least one word after its identifier. Reorder the logs so that all of the letter-logs come before any digit-log. The letter-logs are ordered lexicographically ignoring identifier, with the

LeetCode All in One 题目讲解汇总(持续更新中...)

落花浮王杯 提交于 2020-03-29 17:02:32
Calculate the sum of two integers a and b , but you are not allowed to use the operator + and - . Example 1: Input: a = 1, b = 2 Output: 3 Example 2: Input: a = -2, b = 3 Output: 1 Credits: Special thanks to @fujiaozhu for adding this problem and creating all test cases. 这道题是 CareerCup 上的一道原题,可参见博主之前的博客 18.1 Add Two Numbers 。这里让实现两数相加,但是不能用加号或者其他什么数学运算符号,那么只能回归计算机运算的本质,位操作 Bit Manipulation,在做加法运算的时候,每位相加之后可能会有进位 Carry 产生,然后在下一位计算时需要加上进位一起运算,那么能不能将两部分拆开呢,来看一个例子 759+674 1. 如果不考虑进位,可以得到 323 2. 如果只考虑进位,可以得到 1110 3. 把上面两个数字假期 323+1110=1433 就是最终结果了 然后进一步分析,如果得到上面的第一第二种情况,在二进制下来看,不考虑进位的加,0+0=0,0+1=1,

247. Strobogrammatic Number II

拜拜、爱过 提交于 2020-03-29 16:58:17
题目: A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down). Find all strobogrammatic numbers that are of length = n. For example, Given n = 2, return ["11","69","88","96"] . Hint: Try to use recursion and notice that it should recurse with n - 2 instead of n - 1. 链接: http://leetcode.com/problems/strobogrammatic-number-ii/ 题解: 求所有长度为n的strobogrammatic number。这题一开始的思路是用DFS + Backtracking。还要处理一些特殊的边界条件,比如n的长度为奇数和偶数,以及最外层不能为两个'0'等等,代码写得很拖沓。 Discuss区有不少好的代码,二刷时一定要思考清楚再进行优化。这里我主要是从中心向两边添加,而discuss区大家大部分都是从两边向中心递归,所以我的代码还需要回溯,不够简练。 Time Complexity - O

本周学习小结(23/03 - 29/03)

∥☆過路亽.° 提交于 2020-03-29 10:20:57
LeetCode 本周无进展。需要及时复习。 学习笔记之LeetCode - 浩然119 - 博客园 https://www.cnblogs.com/pegasus923/p/5528520.html Explore - LeetCode - Design https://leetcode.com/explore/interview/card/top-interview-questions-medium/112/design/ Explore - LeetCode - Math https://leetcode.com/explore/interview/card/top-interview-questions-medium/113/math/ 学习笔记之Problem Solving with Algorithms and Data Structures using Python - 浩然119 - 博客园 https://www.cnblogs.com/pegasus923/p/10454395.html C++ / Database / Git / Linux / Python / MISC 本周有进展。现在对文章选取贵精而不贵多。 学习笔记之C / C++ - 浩然119 - 博客园 https://www.cnblogs.com/pegasus923/p/10437163