LeetCode Egzersiz – Easy – Java

5 Adet Easy Leetcode Sorusu

https://leetcode.com/problems/two-sum

class Solution {
    public int[] twoSum(int[] nums, int target) {
        int[] array = new int[2];
        int numsLength = nums.length;
        for(int i = 0; i<numsLength; i++){
            for(int j = 0; j<numsLength;j++){ 
                if (nums[i] + nums[j] == target && i != j){
                    array[0] = i;
                    array[1] = j;
                }
            }
        }   
        return array;
    }
}

 

https://leetcode.com/problems/palindrome-number

 

class Solution {
    public boolean isPalindrome(int x) {
        if (x < 0 || (x % 10 == 0 && x != 0)) return false;

        if (x >= 0 && x < 10) return true;

        int temp = x;
        int count = 0;

        while (temp != 0) {
            temp /= 10;
            count++;
        }

        for (int i = 0; i < count / 2; i++) {
            int right = (x / (int)Math.pow(10, i)) % 10;
            int left = (x / (int)Math.pow(10, count - i - 1)) % 10;

            if (right != left) return false;
        }

        return true;
    }
}

 

https://leetcode.com/problems/roman-to-integer

 

class Solution {
    public int romanToInt(String s) {
        if (s.length() == 1) return changeLetter(s);

        int output = 0;
        for(int i = s.length(); i > 1; i--){
            int j = i - 1;
            String last = new String(s.substring(i-1,i));
            String lastBefore = new String(s.substring(j-1,j));
            int lastVal = changeLetter(last);
            int lastBeforeVal = changeLetter(lastBefore);
            if (lastBeforeVal < lastVal) {
                if (i == s.length()) output = output + (lastVal - lastBeforeVal);
                else output = output - lastBeforeVal;
            }else {
                if (i == s.length()) output = output + (lastVal + lastBeforeVal);
                else output = output + lastBeforeVal;
            }
        }
        return output;
    }
    public int changeLetter(String h){
        switch (h){
            case "I":
                return 1;
            case "V":
                return 5;
            case "X":
                return 10;
            case "L":
                return 50;            
            case "C":
                return 100;
            case "D":
                return 500;
            case "M":
                return 1000;
            default:
                return 0;
            }
    }
}

 

https://leetcode.com/problems/longest-common-prefix/

 

class Solution {
    public String longestCommonPrefix(String[] strs) {
        String lastLetters = "";
        int minLen = strs[0].length();
        for(String str : strs){
            int strLen = str.length();
            if (strLen < minLen) minLen = strLen;
        }
        if (minLen == 0) return lastLetters;
        if (strs.length == 1) return strs[0];
        String letter = "";
        for(int i = 0; i < minLen; i++){
            boolean isEqual = false; 
            String letterFirst = strs[0].substring(i,i+1);
            for(int j = 1; j < strs.length; j++){
                letter = strs[j].substring(i,i+1);
                isEqual = letter.equals(letterFirst); 
                if(isEqual == false) break;
            }
            if(isEqual == true) lastLetters = lastLetters.concat(letter);
            else break;   
            
        }
        return lastLetters;
    }
}

https://leetcode.com/problems/length-of-last-word/

class Solution {
    public int lengthOfLastWord(String s) {
        int lastLetterWithoutSpaceIndex = detectSpaceLast(s);
        int length = s.length() - lastLetterWithoutSpaceIndex;
        for(int i = s.length() - lastLetterWithoutSpaceIndex; i > 0 ; i--){
            String letter = s.substring(i-1,i);
            boolean isEqual = letter.equals(" ");
            if(isEqual == true){
                length = s.length() - i - lastLetterWithoutSpaceIndex;
                break;
            }
        }
    return length;
    }
    public int detectSpaceLast(String s){
        for(int i = s.length(); i > 0 ; i--){
            String letter = s.substring(i-1,i);
            boolean isEqual = letter.equals(" ");
            if(isEqual == false){
                return s.length() - i;
            }
        } 
        return 0;
    }
}