![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编程题
Scout_study
hello world
展开
-
leetcode上的一道 Multiply Strings
思路其实也就是上面所示,用上面一行去乘以下面一行,一个数接着一个数去乘,这里上面的如果索引是i,下面是j,那么这两个相乘就是放在[i+j,i+j+1]这个位置代码如下,我会在代码里面去分析这个相加的过程public String multiply(String num1, String num2) { int m = num1.length(), n = num2.length...原创 2019-10-24 21:07:56 · 99 阅读 · 0 评论 -
回溯法的图例解释和应用的一道leetcode题目. Combination Sum
public class Solution { public static void main(String[] args) { int [] candidates={2,2,3,5,7}; int target=7; System.out.println(combinationSum(candidates,7)); } p...原创 2019-10-23 20:15:44 · 113 阅读 · 0 评论 -
判断一个数独的有效性(36)
leetcode这样一题,要求行不能出现相同的元素,列不能出现相同的元素,同时横线圈出来的框也不能出现相同的元素,在输入的时候我们用.代替空格。代码如下:class Solution { public boolean isValidSudoku(char[][] board) { for(int i=0;i<9;i++){//因为set不能增加重复的数,否则就...原创 2019-10-18 11:17:55 · 165 阅读 · 0 评论 -
改变链表两两位置
Given 1->2->3->4,you should return the list as 2->1->4->3.如题给出一串链表然后改变他们两两的顺序/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode n...原创 2019-08-21 09:27:11 · 110 阅读 · 0 评论 -
消除数组中相同元素或给定元素
刷题碰见了两个类型差不多的题目,现在把他们粘贴出来比较一下两道题目都是去移除元素,27指的是给定一个元素,去移除数组里面相同的元素;26指的是移除数组里面相同的元素。27因为相对简单一点,思路是这样的class Solution { public int removeElement(int[] nums, int val) { int index=0; ...原创 2019-08-25 10:33:44 · 111 阅读 · 0 评论 -
Merge k Sorted Lists(k个有序的链表合并)
上次写了两个链表合并的demo,这次leetcode加大了力度来了k个有序的链表的合并。思想是这样的,先比较两个,然后把两个比较完成之后与第三个比较,再完成后与第四个比较…以此类推但是这里我是看了别人的解答,用到了递归/** * Definition for singly-linked list. * public class ListNode { * int val; * ...原创 2019-06-04 20:21:36 · 167 阅读 · 0 评论 -
Merge Two sorted lists(把两个有序链表合并)
和师兄一起做的一道题:要求:合并之后的链表还是有序的方法1:/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution...原创 2019-06-01 10:48:05 · 842 阅读 · 0 评论 -
valid parentheses(合理的括弧)
和师兄一起写的一道编程题。要求:设计一个程序判断,括弧是否对称?就是左括弧写完如果出现右括弧那么其左侧一定是对称的,否则直接返回false,这个我们可以利用栈的先进后出原则。把所有左括弧全部都放进栈里面,然后循环如果出现右括弧就把栈推出一个,最后循环结束,看栈是否为空,空就说明对称。代码:class Solution { public boolean isValid(String...原创 2019-05-31 09:01:01 · 185 阅读 · 0 评论 -
add two Numbers(来源leetcode)
进行两个数的相加,首先把数字按照倒序放在链表里面,然后从左向右相加。首先系统给出一小部分定义/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */...原创 2019-05-28 11:28:16 · 67 阅读 · 0 评论 -
3Sum(在一个数组中找到3个数相加之后为0)
给出一个数组,在其中找到三个数相加使得结果为0?思路:从数组中找到第一个数,然后用0减去这个数,得到一个sum,然后在剩下的几个数中从两头开始遍历找两个数相加的和为sum,如果第一次找到了这两个数,那么分别把这两个数向中间递进,如果相同则去掉;如果没有找到把这两头的数换掉。最后如果第一个数确定后找不到两个数使三个和为0,则说明可以把第二个数下标加一个,第三个数不变;或者第二个数不变,第三个数...原创 2019-05-23 12:47:14 · 2409 阅读 · 2 评论 -
Longest common prefix(最长的相同前缀)
和师兄昨晚刷的又一道编程题如果有相同的就输出相同前缀,否则的话输出“ ”代码如下class Solution { public String longestCommonPrefix(String[] strs) { if(strs.length==0||strs==null) //如果数组为长度为0或者数组为空是为了防止空指针异常 return ...原创 2019-05-20 09:32:28 · 208 阅读 · 0 评论