算法
Gilagamesh
这个作者很懒,什么都没留下…
展开
-
每日算法:获取两数组的交集
题目:给定两个数组,求两个数组的交集数据。思路:可以通过Map来进行1、将数组1的元素放入map中,元素为key,元素出现的次数为value2、遍历数组2,使用数组2的元素从map中取值,取值大于1则表明该元素是两个数组的交集元素,将元素放入list,同时value - 1。代码:class Solution { public int[] intersect(int[] nums1, int[] nums2) { HashMap<Integer, Inte原创 2021-08-18 14:50:19 · 769 阅读 · 0 评论 -
每日算法:旋转数组
题目:给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。例:输入:nums = [1,2,3,4,5,6,7], k = 3输出:[5,6,7,1,2,3,4]解:可以先反转整个数组,然后再反转前半部分,再反转后半部分代码如下:class Solution { public void rotate(int[] nums, int k) { int length = nums.length; k %= length;...原创 2021-08-17 11:15:49 · 156 阅读 · 0 评论 -
每日算法:删除有序数组重复项
题目:给定一个有序数组nums,请原地删除所有的重复元素,并输出去除重复元素后的数组长度(不能使用额外的数组空间)解题思路:使用双指针的思路,left = 0,right = 1,当left指向元素的值等于right指向元素的值时,left不动,right向右移动一位,当left指向元素的值与right指向元素的值不同时,left右移动一位,并将right的值赋值给移动后的left指向的值。代码:class Solution { public int removeDuplicate原创 2021-08-16 11:07:11 · 188 阅读 · 0 评论 -
算法:划分数组为连续数字的集合
给定一个整数数组nums和一个正整数k,请判断,正整数k是否能将数组nums再划分成若干个长度为k的连续数字的数组?例:输入:nums = [1,2,3,3,4,4,5,6], k = 4输出:true解释:数组可以分成 [1,2,3,4] 和 [3,4,5,6]。...原创 2021-06-04 16:30:43 · 296 阅读 · 0 评论 -
计算旅游终点面试题
给你一份旅游线路图,该线路图中的旅行线路用数组paths表示,其中paths[i] = [cityAi, cityBi]表示该线路将会从cityAi直接前往cityBi。请你找出这次旅行的终点站,即没有任何可以通往其他城市的线路的城市。题目数据保证线路图会形成一条不存在循环的线路,因此只会有一个旅行终点站。示例 1:输入:paths = [["London","New York"],["New York","Lima"],["Lima","Sao Paulo"]]输出:"Sa...翻译 2021-03-24 23:10:24 · 93 阅读 · 0 评论 -
算法:路径总和
题目:给你二叉树的根节点root 和一个表示目标和的整数targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和targetSum 。原创 2021-06-04 13:49:54 · 79 阅读 · 0 评论