Skip to content

Commit 5fa99fb

Browse files
authored
[toychip] Week 03 solutions (#1297)
* valid-palindrome solution * maximum-subarray solution * blank lint
1 parent 91e14ac commit 5fa99fb

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed

maximum-subarray/toychip.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
class Solution {
2+
public int maxSubArray(int[] nums) {
3+
int maxSum = nums[0];
4+
int currentSum = nums[0];
5+
6+
for (int i = 1; i < nums.length; i++) {
7+
currentSum = Math.max(nums[i], currentSum + nums[i]);
8+
maxSum = Math.max(maxSum, currentSum);
9+
}
10+
return maxSum;
11+
}
12+
}

valid-palindrome/toychip.java

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
class Solution {
2+
public boolean isPalindrome(String s) {
3+
char[] charArray = s.toCharArray();
4+
StringBuilder stringBuilder = new StringBuilder();
5+
6+
for (char c : charArray) {
7+
if (Character.isLetterOrDigit(c)) {
8+
stringBuilder.append(c);
9+
}
10+
}
11+
12+
String validChars = stringBuilder.toString();
13+
14+
char[] validArray = validChars.toCharArray();
15+
char[] reversArray = new char[validArray.length];
16+
17+
for (int i = 0; i < validArray.length; i++) {
18+
validArray[i] = Character.toLowerCase(validArray[i]);
19+
reversArray[i] = Character.toLowerCase(reversArray[i]);
20+
}
21+
22+
for (int i = 0; i < validArray.length; i++) {
23+
reversArray[validArray.length - 1 - i] = validArray[i];
24+
}
25+
26+
for (int i = 0; i < validArray.length; i++) {
27+
if (reversArray[i] != validArray[i]) {
28+
return false;
29+
}
30+
}
31+
return true;
32+
}
33+
}

0 commit comments

Comments
 (0)