Tag Archives: leetcode çözümleri

LeetCode Çözümleri – 125. Valid Palindrome – [Facebook ve Apple Mülakat Sorusu]

LeetCode içerisinde bulunan “Valid Palindrome”‘ sorusunun açıklaması ve çözümü. Bu soruda verilen bir string’in içindeki sadece alfanümerik karakterleri göz önüne alarak bu string’in bir palindrom olup olmadığını bulmamızı istiyor. LeetCode’a göre Facebook ve Apple mülakatlarında sorulmuş sorulardan biri.

🔥 LeetCode 125. Valid Palindrome: https://leetcode.com/problems/valid-palindrome/

🔥 Palindrom nedir? https://tr.wikipedia.org/wiki/Palindrom

➡️ Problem açıklaması:

Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.

Note: For the purpose of this problem, we define empty string as valid palindrome.

Example 1:

Input: “A man, a plan, a canal: Panama”

Output: true

Example 2:

Input: “race a car”

Output: false

Constraints: s consists only of printable ASCII characters.

LeetCode Çözümleri – 88. Merge Sorted Array

LeetCode içerisinde bulunan “Merge Sorted Array”‘ sorusunun açıklaması ve çözümü.

🔥 LeetCode 88. Merge Sorted Array: https://leetcode.com/problems/merge-sorted-array/

➡️ Problem açıklaması:

Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.

Note:

The number of elements initialized in nums1 and nums2 are m and n respectively. You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional elements from nums2.

Example:

Input: nums1 = [1,2,3,0,0,0], m = 3

nums2 = [2,5,6], n = 3

Output: [1,2,2,3,5,6]

LeetCode Çözümleri – 83. Remove Duplicates from Sorted List – [Facebook ve Google Mülakat Sorusu]

LeetCode içerisinde bulunan “Remove Duplicates from Sorted List”‘ sorusunun açıklaması ve çözümü.

🔥 LeetCode 83. Remove Duplicates from Sorted List: https://leetcode.com/problems/remove-duplicates-from-sorted-list/

🔥 Bahsi geçen Linked List yazısı: https://www.cs.cmu.edu/~adamchik/15-121/lectures/Linked%20Lists/linked%20lists.html

➡️ Problem açıklaması:

Given a sorted linked list, delete all duplicates such that each element appear only once.

Example 1:

Input: 1–1–2

Output: 1–2

Example 2:

Input: 1–1–2–3–3

Output: 1–2–3

LeetCode Çözümleri – 70. Climbing Stairs [Amazon ve Goldman Sachs Mülakat Sorusu]

LeetCode içerisinde bulunan “Climbing Stairs”‘ sorusunun açıklaması ve çözümü. Bu soruda N basamaktan oluşan bir merdivenimiz var ve bu merdiveni çıkarken ya 1 basamak, ya da 2 basamak çıkabiliyoruz tek adımda. Bu merdiveni kaç farklı şekilde tırmanabiliriz? Leetcode’a göre Amazon ve Goldman Sachs’ta mülakatlarında sorulmuş sorulardan biri.

🔥 LeetCode 70. Climbing Stairs: https://leetcode.com/problems/climbing-stairs/

➡️ Problem açıklaması:

You are climbing a stair case. It takes n steps to reach to the top.

Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

Note: Given n will be a positive integer.

Example 1:

Input: 2

Output: 2

Explanation: There are two ways to climb to the top. 1. 1 step + 1 step 2. 2 steps

Example 2:

Input: 3

Output: 3

Explanation: There are three ways to climb to the top. 1. 1 step + 1 step + 1 step 2. 1 step + 2 steps 3. 2 steps + 1 step

LeetCode Çözümleri – 69. Sqrt(x)

LeetCode içerisinde bulunan “Sqrt(x)”‘ sorusunun açıklaması ve çözümü. Bu soruda tamsayı bir parametre alan metodunuzdan geriye o sayının karekökünün tam sayı halini döndürmenizi istiyor. Tabi bunun için hali hazırda kullandığınız programlama dilinde var olan sqrt() gibi metodları kullanmamanız gerekmekte.

🔥 LeetCode 69. Sqrt(x): https://leetcode.com/problems/sqrtx/

➡️ Problem açıklaması:

Implement int sqrt(int x).

Compute and return the square root of x, where x is guaranteed to be a non-negative integer.

Since the return type is an integer, the decimal digits are truncated and only the integer part of the result is returned.

Example 1:

Input: 4

Output: 2

Example 2:

Input: 8

Output: 2

Explanation: The square root of 8 is 2.82842…, and since the decimal part is truncated, 2 is returned.

LeetCode Çözümleri – 38. Count And Say

LeetCode içerisinde bulunan “Count And Say”‘ sorusunun açıklaması ve çözümü.

🔥 LeetCode 38. Count And Say: https://leetcode.com/problems/count-and-say/

🔥 Look-and-say sequence: https://en.wikipedia.org/wiki/Look-and-say_sequence

➡️ Problem açıklaması:

The count-and-say sequence is the sequence of integers with the first five terms as following:

1. 1

2. 11

3. 21

4. 1211

5. 111221

1 is read off as “one 1” or 11.

11 is read off as “two 1s” or 21.

21 is read off as “one 2, then one 1” or 1211.

Given an integer n where 1 ≤ n ≤ 30, generate the nth term of the count-and-say sequence. You can do so recursively, in other words from the previous member read off the digits, counting the number of digits in groups of the same digit.

☢️ Note: Each term of the sequence of integers will be represented as a string.

Example 1:

Input: 1

Output: “1”

Explanation: This is the base case.

Example 2:

Input: 4

Output: “1211”

Explanation:

For n = 3 the term was “21” in which we have two groups “2” and “1”, “2” can be read as “12” which means frequency = 1 and value = 2, the same way “1” is read as “11”, so the answer is the concatenation of “12” and “11” which is “1211”.

LeetCode May Challenge – Valid Perfect Square – [9. GÜN]

LeetCode’un mayıs ayı için her gün bir programlama sorusu sorduğu “May Challenge”‘ın 9. gün sorusu “Valid Perfect Square””in açıklaması ve çözümü.

🔥 LeetCode May Challenge: https://leetcode.com/explore/featured/card/may-leetcoding-challenge

➡️ Problem açıklaması:

Given a positive integer num, write a function which returns True if num is a perfect square else False.

☢️ Note: DO NOT use any built-in library function such as sqrt.

Example 1:

Input: 16

Output: true

Example 2:

Input: 14

Output: false

LeetCode May Challenge – First Bad Version 1. GÜN – [Facebook Mülakat Sorusu]

LeetCode’un mayıs ayı için her gün bir programlama sorusu sorduğu “May Challenge”‘ın ilk gün sorusu “First Bad Version”‘ın açıklaması ve çözümü. LeetCode’a göre bu soru Facebook’un mülakatlarında sormuş olduğu sorulardan biriymiş.

🔥 LeetCode May Challenge: https://leetcode.com/explore/featured/card/may-leetcoding-challenge

✅ Problem açıklaması:

You are a product manager and currently leading a team to develop a new product. Unfortunately, the latest version of your product fails the quality check. Since each version is developed based on the previous version, all the versions after a bad version are also bad.

Suppose you have n versions [1, 2, …, n] and you want to find out the first bad one, which causes all the following ones to be bad.

You are given an API bool isBadVersion(version) which will return whether version is bad. Implement a function to find the first bad version. You should minimize the number of calls to the API.

Example: Given n = 5, and version = 4 is the first bad version.

call isBadVersion(3) returns false

call isBadVersion(5) returns true

call isBadVersion(4) returns true

Then 4 is the first bad version.

✅ Binary Search: https://en.wikipedia.org/wiki/Binary_search_algorithm