Skip to content

Commit 253bfda

Browse files
author
LiquidPlummer
committed
adding project rubric
1 parent e3304f5 commit 253bfda

File tree

53 files changed

+443
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+443
-0
lines changed

Code Challenges/Bigger is Greater/.idea/.gitignore

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Bigger is Greater/.idea/Bigger is Greater.iml

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Bigger is Greater/.idea/inspectionProfiles/Project_Default.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Bigger is Greater/.idea/misc.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Bigger is Greater/.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Bigger is Greater/.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Binary file not shown.
Binary file not shown.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
public class Main {
2+
public static void main(String[] args) {
3+
System.out.println(Result.biggerIsGreater("dkhc"));
4+
}
5+
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
import java.util.Arrays;
2+
3+
class Result {
4+
5+
/*
6+
* Complete the 'biggerIsGreater' function below.
7+
*
8+
* The function is expected to return a STRING.
9+
* The function accepts STRING w as parameter.
10+
*/
11+
12+
public static String biggerIsGreater(String w) {
13+
// Write your code here
14+
//find the latest candidates in the string, closest to the end
15+
//candidates are adjacent characters in the string where s[a] < s[a+1]
16+
//swap those candidates... there might be another step after that... sort the rest? yeah
17+
//made a mistake here, need to swap s[a] with the next largest character to it's right, then sort the rest
18+
19+
20+
char[] array = w.toCharArray();
21+
22+
//find candidate
23+
int candidateIndex = -1;
24+
for(int i = array.length-1; i > 0; i--) {
25+
if(array[i-1] < array[i]) {
26+
candidateIndex = i-1;
27+
break;
28+
}
29+
}
30+
31+
//short circuit, no candidates
32+
if(candidateIndex == -1) {
33+
return "no answer";
34+
}
35+
36+
int swapIndex = -1;
37+
for(int i = array.length-2; i > candidateIndex; i--) {
38+
//we've already been through this once, everything to the right of candidate is descending
39+
//so find the first larger char to the right of candidate right-to-left
40+
if(array[i] > array[candidateIndex]) {
41+
swapIndex = i;
42+
}
43+
}
44+
45+
46+
47+
//do swap
48+
char temp = array[candidateIndex];
49+
array[candidateIndex] = array[swapIndex];
50+
array[swapIndex] = temp;
51+
52+
//sort the rest of the list
53+
if(candidateIndex < array.length-1) {
54+
Arrays.sort(array, candidateIndex, array.length);
55+
}
56+
57+
return String.valueOf(array);
58+
59+
}
60+
61+
}

Code Challenges/Binary Search/.idea/.gitignore

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Binary Search/.idea/Binary Search.iml

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Binary Search/.idea/inspectionProfiles/Project_Default.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Binary Search/.idea/misc.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Binary Search/.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Binary Search/.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Binary file not shown.
Binary file not shown.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
public class Main {
2+
public static void main(String[] args) {
3+
int[] nums = new int[]{2,5};
4+
int target = 0;
5+
Solution solution = new Solution();
6+
7+
System.out.println(solution.search(nums, target));
8+
9+
}
10+
}
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
class Solution {
2+
public int search(int[] nums, int target) {
3+
return recurse(nums, 0, nums.length-1, target);
4+
5+
}
6+
7+
public int recurse(int[] nums, int begin, int end, int target) {
8+
int midpoint = begin + ((end - begin)/2);
9+
10+
//Base case - found it
11+
if(nums[midpoint] == target) {
12+
return midpoint;
13+
}
14+
15+
//Base case - didn't find it
16+
if(end <= begin) {
17+
return -1;
18+
}
19+
20+
//Recurse until we find it
21+
if(target < nums[midpoint]) {
22+
return recurse(nums, begin, midpoint-1, target);
23+
} else {
24+
return recurse(nums, midpoint+1, end, target);
25+
}
26+
}
27+
}

Code Challenges/Grid Challenge/.idea/.gitignore

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Grid Challenge/.idea/Grid Challenge.iml

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Grid Challenge/.idea/inspectionProfiles/Project_Default.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Grid Challenge/.idea/misc.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Grid Challenge/.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Grid Challenge/.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Binary file not shown.
Binary file not shown.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import java.util.ArrayList;
2+
import java.util.List;
3+
4+
public class Main {
5+
public static void main(String[] args) {
6+
List<String> myList = new ArrayList<>();
7+
myList.add("mpxz");
8+
myList.add("abcd");
9+
myList.add("wlmf");
10+
11+
System.out.println(Result.gridChallenge(myList));
12+
}
13+
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import java.util.Arrays;
2+
import java.util.List;
3+
4+
public class Result {
5+
public static String gridChallenge(List<String> grid) {
6+
// Write your code here
7+
for(int i = 0; i < grid.size(); i++) {
8+
char[] arr = grid.get(i).toCharArray();
9+
Arrays.sort(arr);
10+
grid.set(i, String.valueOf(arr));
11+
}
12+
13+
for(int i = 0; i < grid.get(0).length(); i++) { //left to right
14+
for(int j = 1; j < grid.size(); j++) { //up down
15+
if(grid.get(j).charAt(i) < grid.get(j-1).charAt(i)) {
16+
return "NO";
17+
}
18+
}
19+
}
20+
return "YES";
21+
}
22+
}

Code Challenges/Larrys Aray (Mergesort)/.idea/.gitignore

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Larrys Aray (Mergesort)/.idea/Larrys Aray.iml

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Larrys Aray (Mergesort)/.idea/inspectionProfiles/Project_Default.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Larrys Aray (Mergesort)/.idea/misc.xml

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Larrys Aray (Mergesort)/.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Code Challenges/Larrys Aray (Mergesort)/.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Binary file not shown.
Binary file not shown.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import java.util.Arrays;
2+
import java.util.List;
3+
4+
public class Main {
5+
public static void main(String[] args) {
6+
7+
List<Integer> arr = Arrays.asList(1,6,5,2,4,3);
8+
System.out.println(Result.larrysArray(arr));
9+
}
10+
}
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import java.util.List;
2+
3+
public class Result {
4+
int inversions;
5+
6+
public String larrysArray(List<Integer> A) {
7+
this.inversions = 0;
8+
Integer[] a = (Integer[])A.toArray();
9+
mergeSort(a, 0, a.length-1);
10+
}
11+
12+
private Integer[] mergeSort(Integer[] array, int l, int r) {
13+
//base case - array size 1
14+
if(r - l == 1) {
15+
return new Integer[]{array[l]};
16+
}
17+
18+
//recurse
19+
return merge(mergeSort(array, l, r/2), mergeSort(array, 1 + r/2, r));
20+
}
21+
22+
private Integer[] merge(Integer[] a, Integer[] b) {
23+
int aCursor = 0, bCursor = 0, i = 0;
24+
Integer[] array = new Integer[a.length*2];
25+
while(i < array.length) {
26+
if(a[aCursor] < b[bCursor]) {
27+
array[i] = a[aCursor];
28+
aCursor++;
29+
} else {
30+
array[i] = b[bCursor];
31+
bCursor++;
32+
}
33+
i++;
34+
}
35+
return array;
36+
}
37+
}

Code Challenges/Larrys Aray/.idea/.gitignore

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)