Browse Source

Kenneth Fund. Drills1

Arin Turpin 6 years ago
parent
commit
e7647cfb0e

+ 1
- 0
.idea/.name View File

@@ -0,0 +1 @@
1
+FundamentalDrills-Part1

+ 16
- 0
.idea/compiler.xml View File

@@ -0,0 +1,16 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="CompilerConfiguration">
4
+    <annotationProcessing>
5
+      <profile name="Maven default annotation processors profile" enabled="true">
6
+        <sourceOutputDir name="target/generated-sources/annotations" />
7
+        <sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
8
+        <outputRelativeToContentRoot value="true" />
9
+        <module name="FundamentalDrills-Part1" />
10
+      </profile>
11
+    </annotationProcessing>
12
+    <bytecodeTargetLevel>
13
+      <module name="FundamentalDrills-Part1" target="1.5" />
14
+    </bytecodeTargetLevel>
15
+  </component>
16
+</project>

+ 13
- 0
.idea/misc.xml View File

@@ -0,0 +1,13 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="MavenProjectsManager">
4
+    <option name="originalFiles">
5
+      <list>
6
+        <option value="$PROJECT_DIR$/pom.xml" />
7
+      </list>
8
+    </option>
9
+  </component>
10
+  <component name="ProjectRootManager" version="2" project-jdk-name="1.8" project-jdk-type="JavaSDK">
11
+    <output url="file://$PROJECT_DIR$/classes" />
12
+  </component>
13
+</project>

+ 8
- 0
.idea/modules.xml View File

@@ -0,0 +1,8 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="ProjectModuleManager">
4
+    <modules>
5
+      <module fileurl="file://$PROJECT_DIR$/FundamentalDrills-Part1.iml" filepath="$PROJECT_DIR$/FundamentalDrills-Part1.iml" />
6
+    </modules>
7
+  </component>
8
+</project>

+ 6
- 0
.idea/vcs.xml View File

@@ -0,0 +1,6 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project version="4">
3
+  <component name="VcsDirectoryMappings">
4
+    <mapping directory="$PROJECT_DIR$" vcs="Git" />
5
+  </component>
6
+</project>

+ 16
- 0
FundamentalDrills-Part1.iml View File

@@ -0,0 +1,16 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
3
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5">
4
+    <output url="file://$MODULE_DIR$/target/classes" />
5
+    <output-test url="file://$MODULE_DIR$/target/test-classes" />
6
+    <content url="file://$MODULE_DIR$">
7
+      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
8
+      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
9
+      <excludeFolder url="file://$MODULE_DIR$/target" />
10
+    </content>
11
+    <orderEntry type="inheritedJdk" />
12
+    <orderEntry type="sourceFolder" forTests="false" />
13
+    <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
14
+    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
15
+  </component>
16
+</module>

+ 70
- 10
src/main/java/io/zipcoder/ArrayDrills.java View File

@@ -9,8 +9,12 @@ public class ArrayDrills {
9 9
      * example : firstLast(6, [1,2,6); // Should return true
10 10
      *           firstLast(6, [1,2,3]); // Should return false
11 11
      */
12
-    public Boolean firstLast(Integer value, Integer[] input){
13
-        return null;
12
+    public boolean firstLast(Integer value, Integer[] input) {
13
+        boolean result = false;
14
+        if (value == input[0] || value == input[input.length - 1]) {
15
+            result = true;
16
+        }
17
+        return result;
14 18
     }
15 19
 
16 20
     /**
@@ -18,8 +22,13 @@ public class ArrayDrills {
18 22
      * example : sameFirstLast([1,2,3]); // Should return false
19 23
      *           sameFirstLast([1,2,1]); // Should return true
20 24
      */
21
-    public Boolean sameFirstLast(Integer[] input){
22
-        return null;
25
+    public boolean sameFirstLast(Integer[] input){
26
+    boolean x = false;
27
+    if (input.length >= 1 && input[0].equals(input[input.length-1])){
28
+        x = true;
29
+    }
30
+    boolean x2 = x;
31
+        return x2;
23 32
     }
24 33
 
25 34
 
@@ -30,7 +39,12 @@ public class ArrayDrills {
30 39
      *           commonEnd([1, 2, 3], [7, 3, 2]); // Should return false
31 40
      */
32 41
     public Boolean commonEnd(Integer[] input1, Integer[] input2){
33
-        return null;
42
+        boolean testing = false;
43
+        if (input1[0] == input2[0] || input1[input1.length-1].equals(input2[input2.length-1])){
44
+            testing = true;
45
+        }
46
+        Boolean testing2 = testing;
47
+        return testing2;
34 48
     }
35 49
 
36 50
     /**
@@ -39,7 +53,14 @@ public class ArrayDrills {
39 53
      *           rotateLeft([5, 11, 9]); // Should return [11,9,5]
40 54
      */
41 55
     public Integer[] rotateLeft(Integer[] input){
42
-        return null;
56
+        Integer x = input[0];
57
+
58
+        for (Integer i = 0; i < input.length-1; i++){
59
+            input[i] = input[i + 1];
60
+        }
61
+
62
+        input[input.length - 1] = x;
63
+        return input;
43 64
     }
44 65
 
45 66
 
@@ -50,7 +71,21 @@ public class ArrayDrills {
50 71
      *           maxValue([5, 11, 9]); // Should return [11,11,11]
51 72
      */
52 73
     public Integer[] maxValue(Integer[] input){
53
-        return null;
74
+        Integer[] x = new Integer[input.length];
75
+
76
+        for(Integer i = 0; i < input.length; i++){
77
+            Integer changing = 0;
78
+            if(input[i] > changing){
79
+                changing = i;
80
+            }
81
+            for(Integer q = 0; q < x.length; q++){
82
+                x[q] = changing;
83
+            }
84
+        }
85
+//        for(Integer q = 0; q > x.length; q++){
86
+//            x[q] = changing;
87
+//        }
88
+        return x;
54 89
     }
55 90
 
56 91
 
@@ -61,7 +96,23 @@ public class ArrayDrills {
61 96
      *           middleWay([5, 1, 2, 9], [3, 4, 5, 5]); // Should return [3, 9]
62 97
      */
63 98
     public Integer[] middleWay(Integer[] input1, Integer[] input2){
64
-        return null;
99
+        Integer[] x = new Integer[2];
100
+        if(input1.length % 2 != 0){
101
+            x[0] = input1[input1.length/2];
102
+        } else
103
+
104
+            if(input1.length % 2 == 0){
105
+            x[0] = (input1[input1.length/2]) + (input1[input1.length/2 - 1]);
106
+        }
107
+
108
+        if(input2.length % 2 != 0){
109
+            x[1] = input2[input2.length/2];
110
+        } else
111
+
112
+        if(input2.length % 2 == 0){
113
+            x[1] = (input2[input2.length/2]) + (input2[input2.length/2 - 1]);
114
+        }
115
+        return x;
65 116
     }
66 117
 
67 118
 
@@ -71,7 +122,12 @@ public class ArrayDrills {
71 122
      * Return the array which has the largest sum. In event of a tie, return a.
72 123
      */
73 124
     public Integer[] biggerTwo(Integer[] a, Integer[] b){
74
-        return null;
125
+        Integer q = a[0] + a[1];
126
+        Integer k = b[0] + b[1];
127
+        if (k > q){
128
+            return b;
129
+        }
130
+        return a;
75 131
     }
76 132
 
77 133
     /**
@@ -81,6 +137,10 @@ public class ArrayDrills {
81 137
      *           midThree([8, 6, 7, 5, 3, 0, 9]); // Should return [7, 5, 3]
82 138
      */
83 139
     public Integer[] midThree(Integer[] nums){
84
-        return null;
140
+        Integer[] newArray = new Integer[3];
141
+        newArray[0] = nums[nums.length/2 - 1];
142
+        newArray[1] = nums[nums.length/2];
143
+        newArray[2] = nums[nums.length/2 + 1];
144
+        return newArray;
85 145
     }
86 146
 }

+ 1
- 1
src/test/java/io/zipcoder/ArrayDrillsTest.java View File

@@ -179,7 +179,7 @@ public class ArrayDrillsTest {
179 179
     public void biggerTwo3(){
180 180
         Integer[] inputArray1 = {-1 ,20};
181 181
         Integer[] inputArray2 = {2, 15};
182
-        Integer[] expected = {1,20};
182
+        Integer[] expected = {-1,20};
183 183
         Integer[] actual = arrayDrills.biggerTwo(inputArray1, inputArray2);
184 184
         Assert.assertArrayEquals(expected, actual);
185 185
     }

BIN
target/classes/io/zipcoder/ArrayDrills.class View File


BIN
target/test-classes/io/zipcoder/ArrayDrillsTest.class View File