본문 바로가기

Valid Anagram Given two strings s and t , write a function to determine if t is an anagram of s.Example 1:Input: s = "anagram", t = "nagaram" Output: true Example 2:Input: s = "rat", t = "car" Output: false Note: You may assume the string contains only lowercase alphabets.Follow up: What if the inputs contain unicode characters? How would you adapt your solution to such case? My first solution:class Solution:.. 더보기
First Unique Character in a String Given a string, find the first non-repeating character in it and return it's index. If it doesn't exist, return -1.Examples:s = "leetcode" return 0. s = "loveleetcode", return 2. Note: You may assume the string contain only lowercase letters. My solutions:import sys class Solution: def firstUniqChar(self, s): """ :type s: str :rtype: int """ unique_map = dict() sort_list = list() size = len(s) i.. 더보기
Reverse Integer Given a 32-bit signed integer, reverse digits of an integer.Example 1:Input: 123 Output: 321 Example 2:Input: -123 Output: -321 Example 3:Input: 120 Output: 21 Note: Assume we are dealing with an environment which could only store integers within the 32-bit signed integer range: [−231, 231 − 1]. For the purpose of this problem, assume that your function returns 0 when the reversed integer overfl.. 더보기
Reverse String Write a function that takes a string as input and returns the string reversed.Example 1:Input: "hello" Output: "olleh" Example 2:Input: "A man, a plan, a canal: Panama" Output: "amanaP :lanac a ,nalp a ,nam A" My solutions:class Solution: def reverseString(self, s): """ :type s: str :rtype: str """ size = len(s) result = "" for i in range(size): result += s[size - i - 1] return result 더보기
Remove Duplicates from Sorted Array Given a sorted array nums, remove the duplicates in-place such that each element appear only once and return the new length.Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory.Example 1:Given nums = [1,1,2], Your function should return length = 2, with the first two elements of nums being 1 and 2 respectively. It doesn't ma.. 더보기
LRU Cache Design and implement a data structure for LRU (Least Recently Used) cache. It should support the following operations: get and set.get(key) - Get the value (will always be positive) of the key if the key exists in the cache, otherwise return -1.set(key, value) - Set or insert the value if the key is not already present. When the cache reaches its capacity, it should invalidate the least recently.. 더보기
Maximum Absolute Difference You are given an array of N integers, A1, A2 ,…, AN. Return maximum value of f(i, j) for all 1 ≤ i, j ≤ N. f(i, j) is defined as |A[i] - A[j]| + |i - j|, where |x| denotes absolute value of x.For example,A=[1, 3, -1] f(1, 1) = f(2, 2) = f(3, 3) = 0 f(1, 2) = f(2, 1) = |1 - 3| + |1 - 2| = 3 f(1, 3) = f(3, 1) = |1 - (-1)| + |1 - 3| = 4 f(2, 3) = f(3, 2) = |3 - (-1)| + |2 - 3| = 5 So, we return 5. .. 더보기
Max Sum Contiguous Subarray 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.For this problem, return the maximum sum. My Solutions:import sys def maxSubArray(A): size = len(A) max_sum = max(A[0], -sys.maxsize - 1) for i in range(size): result = A[i] for j in .. 더보기
Add One To Number Given a non-negative number represented as an array of digits,add 1 to the number ( increment the number represented by the digits ).The digits are stored such that the most significant digit is at the head of the list.Example:If the vector has [1, 2, 3]the returned vector should be [1, 2, 4]as 123 + 1 = 124. NOTE: Certain things are intentionally left unclear in this question which you should p.. 더보기
Min Steps in Infinite Grid You are in an infinite 2D grid where you can move in any of the 8 directions : (x,y) to (x+1, y), (x - 1, y), (x, y+1), (x, y-1), (x-1, y-1), (x+1,y+1), (x-1,y+1), (x+1,y-1) You are given a sequence of points and the order in which you need to cover the points. Give the minimum number of steps in which you can achieve it. You start from the first point.Input :Given two integer arrays A and B, wh.. 더보기