何かやってみるブログ

興味をもったこと、趣味のこと、技術について色々書きます。

LeetCode Customers Who Never Orderを解いてみた

問題 https://leetcode.com/problems/customers-who-never-order/ 解いた SELECT name AS 'Customers' FROM Customers LEFT JOIN Orders ON Customers.id = Orders.customerId WHERE customerId IS NULL; 結果

LeetCode Duplicate Emailsを解いた

問題 https://leetcode.com/problems/duplicate-emails/ 解いた SELECT email FROM Person GROUP BY email HAVING COUNT(email) > 1; 結果

LeetCode Employees Earning More Than Their Managers解いてみた

問題 https://leetcode.com/problems/employees-earning-more-than-their-managers/submissions/ 解いた サブクエリを使えば良い。 SELECT name AS Employee FROM Employee AS E WHERE salary > ( SELECT salary FROM Employee where id = E.managerId ) ; …

LeetCode Valid Parenthesesを解いてみた

問題 https://leetcode.com/problems/valid-parentheses/ 解いた # @param {String} s # @return {Boolean} def valid_operators ["()", "{}", "[]"] end def is_valid?(char) valid_operators.include? char end def close_operators [")", "}", "]"] end d…

LeetCode Longest Common Prefixを解いてみた

問題 https://leetcode.com/problems/longest-common-prefix/ 解いた # @param {String[]} strs # @return {String} def longest_common_prefix(strs) data = strs[0] result = "" data.chars.each_with_index do |char, index| if strs.all? { |str| str[in…

LeetCode Combine Two Tablesを解いた

問題 https://leetcode.com/problems/combine-two-tables/ 解いた SELECT Person.firstName, Person.lastName, Address.city, Address.state FROM Person LEFT OUTER JOIN Address ON Person.personId = Address.personId 結果 LEFT OUTER JOIN すれば良いで…

LeetCode Roman to Integerを解いた

問題 https://leetcode.com/problems/roman-to-integer/ 解いた # @param {String} s # @return {Integer} def roman_to_int(s) convert_hash = { "I" => 1, "V" => 5, "X" => 10, "L" => 50, "C" => 100, "D" => 500, "M" => 1000 } result = 0 chars = s.c…

LeetCode Palindrome Numberを解いてみた。

問題 leetcode.com 解いた # @param {Integer} x # @return {Boolean} def is_palindrome(x) p x.to_s.reverse == x.to_s end 結果 文字列にしちゃうと瞬殺の問題だった。いつか文字列にしないで解く方法を考えてみたい。