Partition Labels Solution

Programming Problem
Partition Labels Solution

Leetcode763 Partition Labels原题地址 给定一个仅包含小写字母的字符串,问分隔为尽可能多的部分,使得每一个字母仅仅出现在一个部分中,返回分隔的各个部分的长度 对于每个出现的字母,都有最早出现和最晚出现(如果仅出现一次则最早就是最晚)的下标,那么包含这个字母的部分最短最短也要是最早下标到最晚出现下标这一段。然而对每个字母都是如此,所以我们只能取...

Optimal Utilization Solution

Programming Problem
Optimal Utilization Solution

Optimal Utilization原题地址 给定两个列表a和b,每个列表都是由若干个整数对组成,第一个整数表示id,第二个整数表示值。 分别从a和b各取一个元素(整数对)使得值的和小于等于且尽可能接近于目标值,找出所有这样的组合并且返回他们的id 题面中是两个数的和等于或接近于某一个目标值,一般都是双指针题,按值排序后,一个指针指向头,一个指针指向尾,然后根据大小...

Search a 2D Matrix II Solution

Programming Problem
Search a 2D Matrix II Solution

Leetcode240 Search a 2D Matrix II原题地址 给定一个矩阵,满足每行从左到右是升序,每列从上到下是升序,求问目标值是否存在于矩阵中 看到题目中出现了排序好的情况,要么二分查找,要么双指针 由于从左到右升序,从上到下升序,那么对于一个元素,他的右下方所有元素都比他大,也即如果当前元素比目标值大,那么他的右下方所有元素也都比目标值大,自然是不...

Top K Frequently Mentioned Keywords Solution

Programming Problem
Top K Frequently Mentioned Keywords Solution

Top K Frequently Mentioned Keywords原题地址 给定一些有若干单词组成的评论和一些关键词,求问最热门的K个关键词,不区分大小写,出现次数相同则按照字母顺序排序 很标准的哈希打表问题,本题一个容易忽视的点是在同一个评论中的关键词出现多次也只能算一次,这个很多原文下面的题解都没有注意到。 另外就是分开评论中各个词时,应该使用split(&q...

Minimum Cost to Connect Sticks Solution

Programming Problem
Minimum Cost to Connect Sticks Solution

Leetcode1167 Minimum Cost to Connect Sticks题目地址 变式原文地址 领扣地址 本题在Leetcode上是会员题,对应Lintcode-1872 有若干长度为正整数的棍子,每连接两个棍子X和Y需要X+Y的代价,求问将所有棍子连接成一个的最小代价 因为连接两个棍子需要的代价是他们的长度和,合为一个之后又会再与其他棍子连接,相当于他...

Number of Islands Solution

Programming Problem
Number of Islands Solution

Leetcode200 Number of Islands原文地址 给一个二维矩阵,1表示陆地,0表示水,求问有多少个岛屿,岛屿定义为被水包围的一片陆地,陆地之间上下左右连接,假定矩阵四边范围外的都是水 典型的DFS题,题目一般都会有“一片”的概念,通过某一个点以一定的范围(上下左右或九宫格)向外延伸直到无法延伸,这样就形成了一个“一片”,也即答案++,在延伸的同时将...

Search Suggestions System Solution

Programming Problem
Search Suggestions System Solution

Leetcode1268 Search Suggestions System原文地址 给定一些字符串称为产品和一个搜索词,模拟搜索产品时逐个输入字符时应该输出的结果(产品的前缀等于当前输入)。每次最多给出三个结果并按照字典序排序。 比如products = [“mobile”,”mouse”,”moneypot”,”monitor”,”mousepad”],search...

Zombie in Matrix(BFS)

Programming Problem
Zombie in Matrix(BFS)

Zombie in Matrix(BFS)原文地址 给定一个二维矩阵, 值为1表示僵尸,0表示人类,每个僵尸每小时可以感染上下左右相邻的人类,求问多少小时后所有人类都被感染 非常标准的BFS题,一般的题面都是某一些特殊的元素(比如本题的僵尸)可以对相邻的(比如上下左右或九宫格)元素进行一定的操作(比如本题的所谓的感染)。 解题思路也很明确,数据结构使用队列 初始化。...

Reorder Data in Log Files Solution

Programming Problem
Reorder Data in Log Files Solution

Leetcode937 Reorder Data in Log Files原文地址 有一系列logs, 每条log由以空格分开的若干单词组成, 第一个单词为标识符, 后面的为正文, 通过正文可以将log分为两类, 字母log和数字log 要求排序, 字母log必须在数字log前, 字母log间按照log正文的字典序排序, 如果正文相同则按标识符排序, 数字log直接保持...

Amazon OA Questions

Interview
Amazon OA Questions

Amazon Online Assessment Questions原文地址 原文总结了亚麻线上编程题以及相应解答, 我将一一尝试并附上自己的想法, 欢迎讨论 Questions Top K Frequently Mentioned Keywords ⭐⭐⭐ [Experienced] 我的解答 Zombie in Matrix (Min hours to send...

×
  • {title}