letCode-2】的更多相关文章

letcode里面刷题,坑还是链表不熟,(1)头结点还是有必要设置,否则返回的时候找不到位置:(2)先设置next到新节点再next到下一个节点:都是基础知识 /* * * You are given two linked lists representing two non-negative numbers. * The digits are stored in reverse order and each of their nodes contain a single digit. * Ad…
letcode第一题, tm的不好弄. 想了很久想到了一个粗蠢的解决办法. Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and you may not use the same element twice…
Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible input cases. Notes: It is intended for this problem to be spe…
Given an array of integers, return indices of the two numbers such that they add up to a specific target. 给定一个integer类型的数组,让你返回数组中两个元素相加起来等于给定的值得元素的索引数组 You may assume that each input would have exactly one solution. 你可以假设每个给定值只有一个解决方案,那这里我们就不必考虑多个解决…
p { margin-bottom: 0.25cm; line-height: 120% } 一.理论证明 p { margin-bottom: 0.25cm; line-height: 120% } 由以上推导易得公式为:Xk+1 = (Xk +a/Xk)/2 代码实现: class Solution { public: int mySqrt(int x) { double last_pre = 3.000; ;i < ;i++){ double cur_num = (pre_num + do…
回文串 回文串(palindromic string)是指这个字符串无论从左读还是从右读,所读的顺序是一样的:简而言之,回文串是左右对称的.一般求解一个字符串的最长回文子串问题. problem:Longest Palindromic Substring 参考 1.LongestPalindromicSubstring: 完…
1 题目: Find the contiguous subarray within an array (containing at least one number) which has the largest sum. For example, given the array [−2,1,−3,4,−1,2,1,−5,4],the contiguous subarray [4,−1,2,1] has the largest sum = 6. click to show more practic…
问题描述: You're given strings J representing the types of stones that are jewels, and S representing the stones you have.  Each character in S is a type of stone you have.  You want to know how many of the stones you have are also jewels. The letters in…
题目 罗马转整数 题目描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并列的 1 .12 写做 XII ,即为 X + II . 27 写做  XXVII, 即为 XX + V + II . 通常情况下,罗马数字中小的数字在大的数字的右边.但也存在特例,例如 4 不写做 IIII,而是 IV.数字 1 在数字 5 的左边,所表示的数等于大数…
回文数 题目描述 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数组中同一个元素在答案里不能重复出现. 你可以按任意顺序返回答案. 示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[0,1] 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] . 示例 2: 输入:nums = [3,2…
题目:两数之和 描述 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数组中同一个元素在答案里不能重复出现. 你可以按任意顺序返回答案. 实例 示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[0,1] 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] . 示例 2: 输入:nums =…
letcode easy 刷了90%了 我要写个随笔庆祝下 挑着做的太不要脸了,接下来要做剩下的了 :) 剩下的决定直接参考答案了 :) 有些答案看着也好迷糊.水平太差了.(英文水平差,看不懂题目..呃呃呃) 开始刷中等难度了:) 记录自己的知识盲点: 对位运算处理非常的薄弱,动态规划一样薄弱. 中阶难度刷的很慢了. 动态规划:这个简直了. 只能说我的算法是入门级的,他妈的太烂了,简直不能再渣了. 算法简直太渣了,渣到不行. 求人不如求己,还是要自己搞. 动态规划就想画里面的漂亮姑娘,看的见,摸…
package main import ( "fmt" ) type ListNode struct { Val int Next *ListNode } type List struct { headNode *ListNode //头节点 } func main() { //res := letcode.Divide(434, 423) //fmt.Println(res) headNode := &ListNode{} listData := headNode Inser…
letCode第二题题目如下: 给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和.您可以假设除了数字 0 之外,这两个数都不会以 0 开头. 事实上,这一题考的就是节点和一点数学知识,分析题意:两个链表,存储两个逆序数,从头结点开始,个位对个位,十位对十位,长度不一定相等,使用链表逆序输出结果. 所以使用一个标志位作为进位运算,代码如下: /**…
前段时间看到letcode上的元音字母字符串反转的题目,今天来研究一下字符串反转的内容.主要有三种方法: 1.切片法(最简洁的一种) #切片法 def reverse1(): s=input("请输入需要反转的内容:") return s[::-1] reverse1() #运行结果 In [23]: def reverse1(): ...: s=input("请输入需要反转的内容:") ...: return s[::-1] ...: ...: reverse1(…
一.列表查找:从列表中查找指定元素 输入:列表.待查找元素 输出:元素下标或未查找到元素 二.列表查找方式 顺序查找 : 从列表的第一个元素开始遍历,知道找到为止.时间复杂度O(n) 二分查找 :从有序的列表的候选区L[0:n]开始,通过堆待查找的值与候选区中间值进行比较,每次候选区数减少一半,时间复杂度O(logn) 顺序查找 def linear_search(data_set, value): for i in range(range(data_set)): if data_set[i]…
参考博客: http://www.cnblogs.com/alex3714/articles/5474411.html http://www.cnblogs.com/wupeiqi/articles/5480868.html 第一部分 算法简单概念 算法概念 复习:递归 时间复杂度 空间复杂度 什么是算法? 算法(Algorithm):一个计算过程,解决问题的方法 复习:递归 递归的两个特点: 调用自身 结束条件 看下面几个函数: 递归:练习 时间复杂度 看代码: print('Hello Wo…
在前面复习了三个简单排序Java数据结构和算法(三)--三大排序--冒泡.选择.插入排序,属于算法的基础,但是效率是偏低的,所以现在 学习高级排序 插入排序存在的问题: 插入排序在逻辑把数据分为两部分,左边:数据是有序的,右边:数据是无序的 上图中的元素2,是最小的数据,但是在最右边,我们需要和之前的元素进行比较,然后每个元素都要后移,直到找到应该插入的位置,这里 对于元素2来说,所有的元素都要后移一位 这个过程将近存在N次复制,移位的次数平均N/2,所以执行效率是O(N^2) 所以如果能以某种…
letcode:22 Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses. public List<String> generateParenthesis(int n) { List<String> res = new ArrayList<>(); gen(res, n, n, ""); retur…