#15 Seth-Abrams

Open
Seth-Abrams wants to merge 12 commits from Seth-Abrams/ArraysGoneWild:master into master

+ 1
- 1
.idea/ArraysGoneWild.iml View File

@@ -1,6 +1,6 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2 2
 <module type="JAVA_MODULE" version="4">
3
-  <component name="NewModuleRootManager" inherit-compiler-output="true">
3
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8" inherit-compiler-output="true">
4 4
     <exclude-output />
5 5
     <content url="file://$MODULE_DIR$" />
6 6
     <orderEntry type="inheritedJdk" />

+ 1
- 1
.idea/compiler.xml View File

@@ -10,7 +10,7 @@
10 10
       </profile>
11 11
     </annotationProcessing>
12 12
     <bytecodeTargetLevel>
13
-      <module name="arraz" target="1.5" />
13
+      <module name="arraz" target="8" />
14 14
     </bytecodeTargetLevel>
15 15
   </component>
16 16
 </project>

+ 0
- 13
.idea/libraries/Maven__junit_junit_4_0.xml View File

@@ -1,13 +0,0 @@
1
-<component name="libraryTable">
2
-  <library name="Maven: junit:junit:4.0">
3
-    <CLASSES>
4
-      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.0/junit-4.0.jar!/" />
5
-    </CLASSES>
6
-    <JAVADOC>
7
-      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.0/junit-4.0-javadoc.jar!/" />
8
-    </JAVADOC>
9
-    <SOURCES>
10
-      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.0/junit-4.0-sources.jar!/" />
11
-    </SOURCES>
12
-  </library>
13
-</component>

+ 13
- 0
.idea/libraries/Maven__junit_junit_4_12.xml View File

@@ -0,0 +1,13 @@
1
+<component name="libraryTable">
2
+  <library name="Maven: junit:junit:4.12">
3
+    <CLASSES>
4
+      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12.jar!/" />
5
+    </CLASSES>
6
+    <JAVADOC>
7
+      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-javadoc.jar!/" />
8
+    </JAVADOC>
9
+    <SOURCES>
10
+      <root url="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12-sources.jar!/" />
11
+    </SOURCES>
12
+  </library>
13
+</component>

+ 13
- 0
.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml View File

@@ -0,0 +1,13 @@
1
+<component name="libraryTable">
2
+  <library name="Maven: org.hamcrest:hamcrest-core:1.3">
3
+    <CLASSES>
4
+      <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar!/" />
5
+    </CLASSES>
6
+    <JAVADOC>
7
+      <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-javadoc.jar!/" />
8
+    </JAVADOC>
9
+    <SOURCES>
10
+      <root url="jar://$MAVEN_REPOSITORY$/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3-sources.jar!/" />
11
+    </SOURCES>
12
+  </library>
13
+</component>

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

@@ -7,4 +7,5 @@
7 7
       </list>
8 8
     </option>
9 9
   </component>
10
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
10 11
 </project>

+ 440
- 209
.idea/workspace.xml View File

@@ -2,79 +2,127 @@
2 2
 <project version="4">
3 3
   <component name="ChangeListManager">
4 4
     <list default="true" id="3455511b-a100-4bbd-b07c-68f009bc8dbc" name="Default" comment="">
5
-      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
6
-      <change beforePath="$PROJECT_DIR$/README.md" afterPath="$PROJECT_DIR$/README.md" />
5
+      <change beforePath="$PROJECT_DIR$/arraz/src/main/java/Arraz.java" beforeDir="false" afterPath="$PROJECT_DIR$/arraz/src/main/java/Arraz.java" afterDir="false" />
6
+      <change beforePath="$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java" afterDir="false" />
7 7
     </list>
8 8
     <ignored path="$PROJECT_DIR$/arraz/target/" />
9 9
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
10
-    <option name="TRACKING_ENABLED" value="true" />
11 10
     <option name="SHOW_DIALOG" value="false" />
12 11
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
13 12
     <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
14 13
     <option name="LAST_RESOLUTION" value="IGNORE" />
15 14
   </component>
15
+  <component name="FUSProjectUsageTrigger">
16
+    <session id="533842486">
17
+      <usages-collector id="statistics.lifecycle.project">
18
+        <counts>
19
+          <entry key="project.open.time.1" value="1" />
20
+          <entry key="project.opened" value="1" />
21
+        </counts>
22
+      </usages-collector>
23
+      <usages-collector id="statistics.file.types.edit">
24
+        <counts>
25
+          <entry key="JAVA" value="14150" />
26
+          <entry key="XML" value="3" />
27
+        </counts>
28
+      </usages-collector>
29
+      <usages-collector id="statistics.file.types.open">
30
+        <counts>
31
+          <entry key="CLASS" value="1" />
32
+          <entry key="JAVA" value="6" />
33
+          <entry key="XML" value="3" />
34
+        </counts>
35
+      </usages-collector>
36
+    </session>
37
+  </component>
16 38
   <component name="FileEditorManager">
17 39
     <leaf SIDE_TABS_SIZE_LIMIT_KEY="375">
18
-      <file leaf-file-name="pom.xml" pinned="false" current-in-tab="false">
19
-        <entry file="file://$PROJECT_DIR$/arraz/pom.xml">
20
-          <provider selected="true" editor-type-id="text-editor">
21
-            <state relative-caret-position="0">
22
-              <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
23
-              <folding />
24
-            </state>
25
-          </provider>
26
-        </entry>
27
-      </file>
28
-      <file leaf-file-name="Arraz.java" pinned="false" current-in-tab="false">
40
+      <file pinned="false" current-in-tab="false">
29 41
         <entry file="file://$PROJECT_DIR$/arraz/src/main/java/Arraz.java">
30 42
           <provider selected="true" editor-type-id="text-editor">
31
-            <state relative-caret-position="0">
32
-              <caret line="0" column="15" lean-forward="false" selection-start-line="0" selection-start-column="15" selection-end-line="0" selection-end-column="15" />
33
-              <folding />
43
+            <state relative-caret-position="300">
44
+              <caret line="198" column="41" selection-start-line="198" selection-start-column="41" selection-end-line="198" selection-end-column="41" />
45
+              <folding>
46
+                <element signature="e#3440#3441#0" expanded="true" />
47
+                <element signature="e#3482#3483#0" expanded="true" />
48
+                <element signature="e#3556#3557#0" expanded="true" />
49
+                <element signature="e#3603#3604#0" expanded="true" />
50
+                <element signature="e#3677#3678#0" expanded="true" />
51
+                <element signature="e#3714#3715#0" expanded="true" />
52
+                <element signature="e#4954#4955#0" expanded="true" />
53
+                <element signature="e#4995#4996#0" expanded="true" />
54
+                <element signature="e#5042#5043#0" expanded="true" />
55
+                <element signature="e#5115#5116#0" expanded="true" />
56
+                <element signature="e#5173#5174#0" expanded="true" />
57
+                <element signature="e#5234#5235#0" expanded="true" />
58
+                <element signature="e#5305#5306#0" expanded="true" />
59
+                <element signature="e#5342#5343#0" expanded="true" />
60
+              </folding>
34 61
             </state>
35 62
           </provider>
36 63
         </entry>
37 64
       </file>
38
-      <file leaf-file-name="ArrazTest.java" pinned="false" current-in-tab="false">
65
+      <file pinned="false" current-in-tab="true">
39 66
         <entry file="file://$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java">
40 67
           <provider selected="true" editor-type-id="text-editor">
41
-            <state relative-caret-position="34">
42
-              <caret line="2" column="23" lean-forward="false" selection-start-line="2" selection-start-column="23" selection-end-line="2" selection-end-column="23" />
43
-              <folding />
68
+            <state relative-caret-position="300">
69
+              <caret line="462" column="5" lean-forward="true" selection-start-line="462" selection-start-column="5" selection-end-line="462" selection-end-column="5" />
70
+              <folding>
71
+                <element signature="imports" expanded="true" />
72
+              </folding>
44 73
             </state>
45 74
           </provider>
46 75
         </entry>
47 76
       </file>
48
-      <file leaf-file-name="README.md" pinned="false" current-in-tab="true">
77
+      <file pinned="false" current-in-tab="false">
49 78
         <entry file="file://$PROJECT_DIR$/README.md">
50 79
           <provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
51 80
             <state split_layout="SPLIT">
52 81
               <first_editor relative-caret-position="306">
53
-                <caret line="18" column="0" lean-forward="true" selection-start-line="18" selection-start-column="0" selection-end-line="18" selection-end-column="0" />
54
-                <folding />
82
+                <caret line="69" column="5" selection-start-line="69" selection-start-column="5" selection-end-line="69" selection-end-column="5" />
55 83
               </first_editor>
56 84
               <second_editor />
57 85
             </state>
58 86
           </provider>
59 87
         </entry>
60 88
       </file>
89
+      <file pinned="false" current-in-tab="false">
90
+        <entry file="file://$PROJECT_DIR$/arraz/src/main/java/OddEven.java">
91
+          <provider selected="true" editor-type-id="text-editor">
92
+            <state>
93
+              <caret column="22" selection-start-column="22" selection-end-column="22" />
94
+              <folding>
95
+                <element signature="e#189#190#0" expanded="true" />
96
+                <element signature="e#215#216#0" expanded="true" />
97
+                <element signature="e#308#309#0" expanded="true" />
98
+                <element signature="e#335#336#0" expanded="true" />
99
+              </folding>
100
+            </state>
101
+          </provider>
102
+        </entry>
103
+      </file>
61 104
     </leaf>
62 105
   </component>
63 106
   <component name="FileTemplateManagerImpl">
64 107
     <option name="RECENT_TEMPLATES">
65 108
       <list>
66
-        <option value="Class" />
67 109
         <option value="JUnit4 Test Class" />
110
+        <option value="Class" />
68 111
       </list>
69 112
     </option>
70 113
   </component>
114
+  <component name="FindInProjectRecents">
115
+    <findStrings>
116
+      <find>list</find>
117
+      <find>rev</find>
118
+      <find>sort</find>
119
+      <find>rever</find>
120
+    </findStrings>
121
+  </component>
71 122
   <component name="Git.Settings">
72 123
     <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
73 124
   </component>
74 125
   <component name="GradleLocalSettings">
75
-    <option name="externalProjectsViewState">
76
-      <projects_view />
77
-    </option>
78 126
     <option name="projectSyncType">
79 127
       <map>
80 128
         <entry key="$USER_HOME$/GitHub/gs-gradle/initial" value="PREVIEW" />
@@ -84,8 +132,12 @@
84 132
   <component name="IdeDocumentHistory">
85 133
     <option name="CHANGED_PATHS">
86 134
       <list>
87
-        <option value="$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java" />
88 135
         <option value="$PROJECT_DIR$/README.md" />
136
+        <option value="$PROJECT_DIR$/arraz/pom.xml" />
137
+        <option value="$PROJECT_DIR$/arraz/src/main/java/MaxMin.java" />
138
+        <option value="$PROJECT_DIR$/arraz/src/main/java/OddEven.java" />
139
+        <option value="$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java" />
140
+        <option value="$PROJECT_DIR$/arraz/src/main/java/Arraz.java" />
89 141
       </list>
90 142
     </option>
91 143
   </component>
@@ -103,26 +155,18 @@
103 155
     </option>
104 156
   </component>
105 157
   <component name="ProjectFrameBounds">
106
-    <option name="x" value="242" />
107
-    <option name="y" value="45" />
108
-    <option name="width" value="1538" />
109
-    <option name="height" value="962" />
158
+    <option name="x" value="1" />
159
+    <option name="y" value="23" />
160
+    <option name="width" value="1440" />
161
+    <option name="height" value="807" />
110 162
   </component>
111 163
   <component name="ProjectView">
112
-    <navigator currentView="ProjectPane" proportions="" version="1">
113
-      <flattenPackages />
114
-      <showMembers />
115
-      <showModules />
116
-      <showLibraryContents />
117
-      <hideEmptyPackages />
118
-      <abbreviatePackageNames />
119
-      <autoscrollToSource />
120
-      <autoscrollFromSource />
121
-      <sortByType />
122
-      <manualOrder />
164
+    <navigator proportions="" version="1">
123 165
       <foldersAlwaysOnTop value="true" />
124 166
     </navigator>
125 167
     <panes>
168
+      <pane id="PackagesPane" />
169
+      <pane id="Scope" />
126 170
       <pane id="ProjectPane">
127 171
         <subPane>
128 172
           <expand>
@@ -151,27 +195,50 @@
151 195
             <path>
152 196
               <item name="ArraysGoneWild" type="b2602c69:ProjectViewProjectNode" />
153 197
               <item name="ArraysGoneWild" type="462c0819:PsiDirectoryNode" />
198
+              <item name="arraz" type="462c0819:PsiDirectoryNode" />
199
+              <item name="src" type="462c0819:PsiDirectoryNode" />
200
+              <item name="main" type="462c0819:PsiDirectoryNode" />
201
+              <item name="java" type="462c0819:PsiDirectoryNode" />
202
+            </path>
203
+            <path>
204
+              <item name="ArraysGoneWild" type="b2602c69:ProjectViewProjectNode" />
205
+              <item name="ArraysGoneWild" type="462c0819:PsiDirectoryNode" />
206
+              <item name="arraz" type="462c0819:PsiDirectoryNode" />
207
+              <item name="src" type="462c0819:PsiDirectoryNode" />
208
+              <item name="test" type="462c0819:PsiDirectoryNode" />
209
+            </path>
210
+            <path>
211
+              <item name="ArraysGoneWild" type="b2602c69:ProjectViewProjectNode" />
212
+              <item name="ArraysGoneWild" type="462c0819:PsiDirectoryNode" />
213
+              <item name="arraz" type="462c0819:PsiDirectoryNode" />
214
+              <item name="src" type="462c0819:PsiDirectoryNode" />
215
+              <item name="test" type="462c0819:PsiDirectoryNode" />
216
+              <item name="java" type="462c0819:PsiDirectoryNode" />
217
+            </path>
218
+            <path>
219
+              <item name="ArraysGoneWild" type="b2602c69:ProjectViewProjectNode" />
220
+              <item name="ArraysGoneWild" type="462c0819:PsiDirectoryNode" />
154 221
               <item name="DocumentationOnArrays" type="462c0819:PsiDirectoryNode" />
155 222
             </path>
156 223
           </expand>
157 224
           <select />
158 225
         </subPane>
159 226
       </pane>
160
-      <pane id="Scratches" />
161
-      <pane id="PackagesPane" />
162
-      <pane id="AndroidView" />
163
-      <pane id="Scope" />
164 227
     </panes>
165 228
   </component>
166 229
   <component name="PropertiesComponent">
167
-    <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
168
-    <property name="settings.editor.selected.configurable" value="configurable.group.appearance" />
230
+    <property name="GO_FMT" value="false" />
169 231
     <property name="WebServerToolWindowFactoryState" value="false" />
170 232
     <property name="aspect.path.notification.shown" value="true" />
171
-    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
172
-    <property name="jdk.selected.JAVA_MODULE" value="1.8" />
233
+    <property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1544219473137" />
173 234
     <property name="com.intellij.testIntegration.createTest.CreateTestDialog.defaultLibrary" value="JUnit4" />
174
-    <property name="GO_FMT" value="false" />
235
+    <property name="jdk.selected.JAVA_MODULE" value="1.8" />
236
+    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
237
+    <property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
238
+    <property name="project.structure.last.edited" value="Modules" />
239
+    <property name="project.structure.proportion" value="0.15" />
240
+    <property name="project.structure.side.proportion" value="0.2" />
241
+    <property name="settings.editor.selected.configurable" value="reference.projectsettings.compiler.javacompiler" />
175 242
   </component>
176 243
   <component name="RecentsManager">
177 244
     <key name="CreateTestDialog.RecentsKey">
@@ -193,90 +260,111 @@
193 260
       </list>
194 261
     </option>
195 262
   </component>
196
-  <component name="RunManager">
263
+  <component name="RunManager" selected="JUnit.ArrazTest.testInsertEndCopy1">
197 264
     <configuration default="true" type="Applet" factoryName="Applet">
198
-      <option name="WIDTH" value="400" />
199
-      <option name="HEIGHT" value="300" />
200 265
       <option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
201
-      <module />
266
+      <method v="2">
267
+        <option name="Make" enabled="true" />
268
+      </method>
202 269
     </configuration>
203 270
     <configuration default="true" type="Application" factoryName="Application">
204
-      <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
205
-      <option name="MAIN_CLASS_NAME" />
206
-      <option name="VM_PARAMETERS" />
207
-      <option name="PROGRAM_PARAMETERS" />
208 271
       <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
209
-      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
210
-      <option name="ALTERNATIVE_JRE_PATH" />
211
-      <option name="ENABLE_SWING_INSPECTOR" value="false" />
212
-      <option name="ENV_VARIABLES" />
213
-      <option name="PASS_PARENT_ENVS" value="true" />
214
-      <module name="" />
215
-      <envs />
272
+      <method v="2">
273
+        <option name="Make" enabled="true" />
274
+      </method>
216 275
     </configuration>
217
-    <configuration default="true" type="JUnit" factoryName="JUnit">
218
-      <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
219
-      <module name="" />
220
-      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
221
-      <option name="ALTERNATIVE_JRE_PATH" />
222
-      <option name="PACKAGE_NAME" />
223
-      <option name="MAIN_CLASS_NAME" />
224
-      <option name="METHOD_NAME" />
225
-      <option name="TEST_OBJECT" value="class" />
226
-      <option name="VM_PARAMETERS" value="-ea" />
227
-      <option name="PARAMETERS" />
276
+    <configuration name="ArrazTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
277
+      <module name="arraz" />
278
+      <option name="PACKAGE_NAME" value="" />
279
+      <option name="MAIN_CLASS_NAME" value="ArrazTest" />
280
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
281
+      <method v="2">
282
+        <option name="Make" enabled="true" />
283
+      </method>
284
+    </configuration>
285
+    <configuration name="ArrazTest.testInsertEndCopy1" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
286
+      <module name="arraz" />
287
+      <option name="PACKAGE_NAME" value="" />
288
+      <option name="MAIN_CLASS_NAME" value="ArrazTest" />
289
+      <option name="METHOD_NAME" value="testInsertEndCopy1" />
290
+      <option name="TEST_OBJECT" value="method" />
291
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
292
+      <method v="2">
293
+        <option name="Make" enabled="true" />
294
+      </method>
295
+    </configuration>
296
+    <configuration name="ArrazTest.testInsertEndCopy2" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
297
+      <module name="arraz" />
298
+      <option name="PACKAGE_NAME" value="" />
299
+      <option name="MAIN_CLASS_NAME" value="ArrazTest" />
300
+      <option name="METHOD_NAME" value="testInsertEndCopy2" />
301
+      <option name="TEST_OBJECT" value="method" />
228 302
       <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
229
-      <option name="ENV_VARIABLES" />
230
-      <option name="PASS_PARENT_ENVS" value="true" />
231
-      <option name="TEST_SEARCH_SCOPE">
232
-        <value defaultName="singleModule" />
233
-      </option>
234
-      <envs />
235
-      <patterns />
303
+      <method v="2">
304
+        <option name="Make" enabled="true" />
305
+      </method>
236 306
     </configuration>
237
-    <configuration default="true" type="Remote" factoryName="Remote">
238
-      <option name="USE_SOCKET_TRANSPORT" value="true" />
239
-      <option name="SERVER_MODE" value="false" />
240
-      <option name="SHMEM_ADDRESS" value="javadebug" />
241
-      <option name="HOST" value="localhost" />
242
-      <option name="PORT" value="5005" />
307
+    <configuration name="ArrazTest.testInsertStartCopy1" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
308
+      <module name="arraz" />
309
+      <option name="PACKAGE_NAME" value="" />
310
+      <option name="MAIN_CLASS_NAME" value="ArrazTest" />
311
+      <option name="METHOD_NAME" value="testInsertStartCopy1" />
312
+      <option name="TEST_OBJECT" value="method" />
313
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
314
+      <method v="2">
315
+        <option name="Make" enabled="true" />
316
+      </method>
317
+    </configuration>
318
+    <configuration name="ArrazTest.testInsertStartCopy2" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
319
+      <module name="arraz" />
320
+      <option name="PACKAGE_NAME" value="" />
321
+      <option name="MAIN_CLASS_NAME" value="ArrazTest" />
322
+      <option name="METHOD_NAME" value="testInsertStartCopy2" />
323
+      <option name="TEST_OBJECT" value="method" />
324
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
325
+      <method v="2">
326
+        <option name="Make" enabled="true" />
327
+      </method>
328
+    </configuration>
329
+    <configuration default="true" type="JUnit" factoryName="JUnit">
330
+      <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
331
+      <method v="2">
332
+        <option name="Make" enabled="true" />
333
+      </method>
243 334
     </configuration>
244 335
     <configuration default="true" type="TestNG" factoryName="TestNG">
245
-      <extension name="coverage" enabled="false" merge="false" sample_coverage="true" runner="idea" />
246
-      <module name="" />
247
-      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
248
-      <option name="ALTERNATIVE_JRE_PATH" />
249
-      <option name="SUITE_NAME" />
250
-      <option name="PACKAGE_NAME" />
251
-      <option name="MAIN_CLASS_NAME" />
252
-      <option name="METHOD_NAME" />
253
-      <option name="GROUP_NAME" />
254
-      <option name="TEST_OBJECT" value="CLASS" />
255
-      <option name="VM_PARAMETERS" value="-ea" />
256
-      <option name="PARAMETERS" />
257 336
       <option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
258
-      <option name="OUTPUT_DIRECTORY" />
259
-      <option name="ANNOTATION_TYPE" />
260
-      <option name="ENV_VARIABLES" />
261
-      <option name="PASS_PARENT_ENVS" value="true" />
262
-      <option name="TEST_SEARCH_SCOPE">
263
-        <value defaultName="singleModule" />
264
-      </option>
265
-      <option name="USE_DEFAULT_REPORTERS" value="false" />
266
-      <option name="PROPERTIES_FILE" />
267
-      <envs />
268 337
       <properties />
269 338
       <listeners />
339
+      <method v="2">
340
+        <option name="Make" enabled="true" />
341
+      </method>
270 342
     </configuration>
271 343
     <configuration default="true" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" factoryName="Plugin">
272 344
       <module name="" />
273 345
       <option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
274 346
       <option name="PROGRAM_PARAMETERS" />
275 347
       <predefined_log_file id="idea.log" enabled="true" />
348
+      <method v="2">
349
+        <option name="Make" enabled="true" />
350
+      </method>
276 351
     </configuration>
277
-  </component>
278
-  <component name="ShelveChangesManager" show_recycled="false">
279
-    <option name="remove_strategy" value="false" />
352
+    <list>
353
+      <item itemvalue="JUnit.ArrazTest" />
354
+      <item itemvalue="JUnit.ArrazTest.testInsertStartCopy1" />
355
+      <item itemvalue="JUnit.ArrazTest.testInsertStartCopy2" />
356
+      <item itemvalue="JUnit.ArrazTest.testInsertEndCopy2" />
357
+      <item itemvalue="JUnit.ArrazTest.testInsertEndCopy1" />
358
+    </list>
359
+    <recent_temporary>
360
+      <list>
361
+        <item itemvalue="JUnit.ArrazTest.testInsertEndCopy1" />
362
+        <item itemvalue="JUnit.ArrazTest.testInsertEndCopy2" />
363
+        <item itemvalue="JUnit.ArrazTest.testInsertStartCopy2" />
364
+        <item itemvalue="JUnit.ArrazTest.testInsertStartCopy1" />
365
+        <item itemvalue="JUnit.ArrazTest" />
366
+      </list>
367
+    </recent_temporary>
280 368
   </component>
281 369
   <component name="SvnConfiguration">
282 370
     <configuration />
@@ -291,6 +379,7 @@
291 379
       <workItem from="1543955862749" duration="2347000" />
292 380
       <workItem from="1543958998826" duration="113000" />
293 381
       <workItem from="1544020724645" duration="762000" />
382
+      <workItem from="1544046933389" duration="44493000" />
294 383
     </task>
295 384
     <task id="LOCAL-00001" summary="readme and docs">
296 385
       <created>1544021313039</created>
@@ -302,40 +391,104 @@
302 391
     <option name="localTasksCounter" value="2" />
303 392
     <servers />
304 393
   </component>
394
+  <component name="TestHistory">
395
+    <history-entry file="ArrazTest_testInsertArrayAt2 - 2018.12.07 at 16h 02m 54s.xml">
396
+      <configuration name="ArrazTest.testInsertArrayAt2" configurationId="JUnit" />
397
+    </history-entry>
398
+    <history-entry file="ArrazTest_testInsertArrayAt2 - 2018.12.07 at 16h 03m 30s.xml">
399
+      <configuration name="ArrazTest.testInsertArrayAt2" configurationId="JUnit" />
400
+    </history-entry>
401
+    <history-entry file="ArrazTest_testInsertArrayAt1 - 2018.12.07 at 16h 03m 55s.xml">
402
+      <configuration name="ArrazTest.testInsertArrayAt1" configurationId="JUnit" />
403
+    </history-entry>
404
+    <history-entry file="ArrazTest - 2018.12.07 at 16h 05m 27s.xml">
405
+      <configuration name="ArrazTest" configurationId="JUnit" />
406
+    </history-entry>
407
+    <history-entry file="ArrazTest_testInsertStartCopy1 - 2018.12.07 at 16h 31m 44s.xml">
408
+      <configuration name="ArrazTest.testInsertStartCopy1" configurationId="JUnit" />
409
+    </history-entry>
410
+    <history-entry file="ArrazTest_testInsertStartCopy2 - 2018.12.07 at 16h 31m 46s.xml">
411
+      <configuration name="ArrazTest.testInsertStartCopy2" configurationId="JUnit" />
412
+    </history-entry>
413
+    <history-entry file="ArrazTest_testInsertEndCopy2 - 2018.12.07 at 16h 45m 50s.xml">
414
+      <configuration name="ArrazTest.testInsertEndCopy2" configurationId="JUnit" />
415
+    </history-entry>
416
+    <history-entry file="ArrazTest_testInsertEndCopy2 - 2018.12.07 at 16h 46m 24s.xml">
417
+      <configuration name="ArrazTest.testInsertEndCopy2" configurationId="JUnit" />
418
+    </history-entry>
419
+    <history-entry file="ArrazTest_testInsertEndCopy2 - 2018.12.07 at 16h 46m 57s.xml">
420
+      <configuration name="ArrazTest.testInsertEndCopy2" configurationId="JUnit" />
421
+    </history-entry>
422
+    <history-entry file="ArrazTest_testInsertEndCopy2 - 2018.12.07 at 16h 47m 14s.xml">
423
+      <configuration name="ArrazTest.testInsertEndCopy2" configurationId="JUnit" />
424
+    </history-entry>
425
+  </component>
305 426
   <component name="TimeTrackingManager">
306
-    <option name="totallyTimeSpent" value="3222000" />
427
+    <option name="totallyTimeSpent" value="47715000" />
307 428
   </component>
308 429
   <component name="ToolWindowManager">
309
-    <frame x="242" y="45" width="1538" height="962" extended-state="0" />
430
+    <frame x="1" y="23" width="1440" height="807" extended-state="0" />
310 431
     <editor active="true" />
311 432
     <layout>
312
-      <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
313
-      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
314
-      <window_info id="Palette&#9;" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
315
-      <window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
316
-      <window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
317
-      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
318
-      <window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
319
-      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
320
-      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
321
-      <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
322
-      <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
323
-      <window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
324
-      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2577389" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
325
-      <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
326
-      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
327
-      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
328
-      <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
329
-      <window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
330
-      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
331
-      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
332
-      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
333
-      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
334
-      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
335
-      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
336
-      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
337
-      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
433
+      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.26108727" />
434
+      <window_info id="Structure" order="1" weight="0.25" />
435
+      <window_info id="Image Layers" order="2" />
436
+      <window_info id="Designer" order="3" />
437
+      <window_info id="UI Designer" order="4" />
438
+      <window_info id="Capture Tool" order="5" />
439
+      <window_info id="Favorites" order="6" side_tool="true" />
440
+      <window_info anchor="bottom" id="Database Changes" show_stripe_button="false" />
441
+      <window_info anchor="bottom" id="Messages" weight="0.32867134" />
442
+      <window_info anchor="bottom" id="Message" order="0" />
443
+      <window_info anchor="bottom" id="Find" order="1" />
444
+      <window_info active="true" anchor="bottom" id="Run" order="2" visible="true" weight="0.32867134" />
445
+      <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
446
+      <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
447
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
448
+      <window_info anchor="bottom" id="TODO" order="6" />
449
+      <window_info anchor="bottom" id="Terminal" order="7" />
450
+      <window_info anchor="bottom" id="Event Log" order="8" side_tool="true" />
451
+      <window_info anchor="bottom" id="Version Control" order="9" />
452
+      <window_info anchor="right" id="Commander" order="0" weight="0.4" />
453
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
454
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
455
+      <window_info anchor="right" id="Palette" order="3" />
456
+      <window_info anchor="right" id="Capture Analysis" order="4" />
457
+      <window_info anchor="right" id="Theme Preview" order="5" />
458
+      <window_info anchor="right" id="Database" order="6" />
459
+      <window_info anchor="right" id="Palette&#9;" order="7" />
460
+      <window_info anchor="right" id="Maven Projects" order="8" />
338 461
     </layout>
462
+    <layout-to-restore>
463
+      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.26108727" />
464
+      <window_info id="Structure" order="1" weight="0.25" />
465
+      <window_info id="Image Layers" order="2" />
466
+      <window_info id="Designer" order="3" />
467
+      <window_info id="UI Designer" order="4" />
468
+      <window_info id="Capture Tool" order="5" />
469
+      <window_info id="Favorites" order="6" side_tool="true" />
470
+      <window_info anchor="bottom" id="Messages" order="0" weight="0.32867134" />
471
+      <window_info anchor="bottom" id="Database Changes" order="1" show_stripe_button="false" />
472
+      <window_info anchor="bottom" id="Message" order="2" />
473
+      <window_info anchor="bottom" id="Find" order="3" />
474
+      <window_info active="true" anchor="bottom" id="Run" order="4" visible="true" weight="0.32867134" />
475
+      <window_info anchor="bottom" id="Debug" order="5" weight="0.4" />
476
+      <window_info anchor="bottom" id="Cvs" order="6" weight="0.25" />
477
+      <window_info anchor="bottom" id="Inspection" order="7" weight="0.4" />
478
+      <window_info anchor="bottom" id="TODO" order="8" />
479
+      <window_info anchor="bottom" id="Terminal" order="9" />
480
+      <window_info anchor="bottom" id="Event Log" order="10" side_tool="true" />
481
+      <window_info anchor="bottom" id="Version Control" order="11" />
482
+      <window_info anchor="right" id="Commander" order="0" weight="0.4" />
483
+      <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
484
+      <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
485
+      <window_info anchor="right" id="Palette" order="3" />
486
+      <window_info anchor="right" id="Capture Analysis" order="4" />
487
+      <window_info anchor="right" id="Theme Preview" order="5" />
488
+      <window_info anchor="right" id="Database" order="6" />
489
+      <window_info anchor="right" id="Palette&#9;" order="7" />
490
+      <window_info anchor="right" id="Maven Projects" order="8" />
491
+    </layout-to-restore>
339 492
   </component>
340 493
   <component name="TypeScriptGeneratedFilesManager">
341 494
     <option name="version" value="1" />
@@ -348,118 +501,184 @@
348 501
     <option name="LAST_COMMIT_MESSAGE" value="readme and docs" />
349 502
   </component>
350 503
   <component name="XDebuggerManager">
351
-    <breakpoint-manager />
352
-    <watches-manager />
504
+    <breakpoint-manager>
505
+      <breakpoints>
506
+        <line-breakpoint enabled="true" type="java-method">
507
+          <url>file://$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java</url>
508
+          <line>206</line>
509
+          <properties class="ArrazTest" method="testInsertArrayAt2">
510
+            <option name="EMULATED" value="true" />
511
+          </properties>
512
+          <option name="timeStamp" value="26" />
513
+        </line-breakpoint>
514
+      </breakpoints>
515
+    </breakpoint-manager>
353 516
   </component>
354 517
   <component name="editorHistoryManager">
355 518
     <entry file="file://$PROJECT_DIR$/arraz/pom.xml">
356 519
       <provider selected="true" editor-type-id="text-editor">
357
-        <state relative-caret-position="0">
358
-          <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
359
-          <folding />
520
+        <state relative-caret-position="240">
521
+          <caret line="16" selection-start-line="16" selection-end-line="16" />
360 522
         </state>
361 523
       </provider>
362 524
     </entry>
363
-    <entry file="file://$PROJECT_DIR$/arraz/src/main/java/Arraz.java">
525
+    <entry file="file://$PROJECT_DIR$/arraz/src/main/java/MaxMin.java">
364 526
       <provider selected="true" editor-type-id="text-editor">
365
-        <state relative-caret-position="0">
366
-          <caret line="0" column="15" lean-forward="false" selection-start-line="0" selection-start-column="15" selection-end-line="0" selection-end-column="15" />
367
-          <folding />
527
+        <state>
528
+          <caret column="21" lean-forward="true" selection-start-column="21" selection-end-column="21" />
529
+          <folding>
530
+            <element signature="e#182#183#0" expanded="true" />
531
+            <element signature="e#208#209#0" expanded="true" />
532
+            <element signature="e#243#244#0" expanded="true" />
533
+            <element signature="e#273#274#0" expanded="true" />
534
+            <element signature="e#300#301#0" expanded="true" />
535
+            <element signature="e#326#327#0" expanded="true" />
536
+            <element signature="e#361#362#0" expanded="true" />
537
+            <element signature="e#391#392#0" expanded="true" />
538
+          </folding>
368 539
         </state>
369 540
       </provider>
370 541
     </entry>
371
-    <entry file="file://$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java">
542
+    <entry file="jar://$MAVEN_REPOSITORY$/junit/junit/4.12/junit-4.12.jar!/org/junit/internal/runners/model/ReflectiveCallable.class">
372 543
       <provider selected="true" editor-type-id="text-editor">
373
-        <state relative-caret-position="34">
374
-          <caret line="2" column="23" lean-forward="false" selection-start-line="2" selection-start-column="23" selection-end-line="2" selection-end-column="23" />
375
-          <folding />
544
+        <state relative-caret-position="210">
545
+          <caret line="17" selection-start-line="17" selection-end-line="17" />
376 546
         </state>
377 547
       </provider>
378 548
     </entry>
379
-    <entry file="file://$PROJECT_DIR$/README.md">
380
-      <provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
381
-        <state split_layout="SPLIT">
382
-          <first_editor relative-caret-position="1241">
383
-            <caret line="73" column="0" lean-forward="true" selection-start-line="73" selection-start-column="0" selection-end-line="73" selection-end-column="0" />
384
-            <folding />
385
-          </first_editor>
386
-          <second_editor />
387
-        </state>
388
-      </provider>
389
-    </entry>
390
-    <entry file="file://$PROJECT_DIR$/arraz/pom.xml">
549
+    <entry file="jar:///Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/src.zip!/java/util/Set.java">
391 550
       <provider selected="true" editor-type-id="text-editor">
392
-        <state relative-caret-position="0">
393
-          <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
394
-          <folding />
551
+        <state relative-caret-position="386">
552
+          <caret line="189" column="17" selection-start-line="189" selection-start-column="17" selection-end-line="189" selection-end-column="17" />
395 553
         </state>
396 554
       </provider>
397 555
     </entry>
398
-    <entry file="file://$PROJECT_DIR$/arraz/src/main/java/Arraz.java">
556
+    <entry file="jar:///Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/src.zip!/java/util/ArrayList.java">
399 557
       <provider selected="true" editor-type-id="text-editor">
400
-        <state relative-caret-position="0">
401
-          <caret line="0" column="15" lean-forward="false" selection-start-line="0" selection-start-column="15" selection-end-line="0" selection-end-column="15" />
402
-          <folding />
558
+        <state relative-caret-position="-10766">
559
+          <caret line="106" column="13" selection-start-line="106" selection-start-column="13" selection-end-line="106" selection-end-column="13" />
403 560
         </state>
404 561
       </provider>
405 562
     </entry>
406
-    <entry file="file://$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java">
563
+    <entry file="file://$PROJECT_DIR$/arraz/src/main/java/OddEven.java">
407 564
       <provider selected="true" editor-type-id="text-editor">
408
-        <state relative-caret-position="34">
409
-          <caret line="2" column="23" lean-forward="false" selection-start-line="2" selection-start-column="23" selection-end-line="2" selection-end-column="23" />
410
-          <folding />
565
+        <state>
566
+          <caret column="22" selection-start-column="22" selection-end-column="22" />
567
+          <folding>
568
+            <element signature="e#189#190#0" expanded="true" />
569
+            <element signature="e#215#216#0" expanded="true" />
570
+            <element signature="e#308#309#0" expanded="true" />
571
+            <element signature="e#335#336#0" expanded="true" />
572
+          </folding>
411 573
         </state>
412 574
       </provider>
413 575
     </entry>
414 576
     <entry file="file://$PROJECT_DIR$/README.md">
415 577
       <provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
416 578
         <state split_layout="SPLIT">
417
-          <first_editor relative-caret-position="1241">
418
-            <caret line="73" column="0" lean-forward="true" selection-start-line="73" selection-start-column="0" selection-end-line="73" selection-end-column="0" />
419
-            <folding />
579
+          <first_editor relative-caret-position="306">
580
+            <caret line="69" column="5" selection-start-line="69" selection-start-column="5" selection-end-line="69" selection-end-column="5" />
420 581
           </first_editor>
421 582
           <second_editor />
422 583
         </state>
423 584
       </provider>
424 585
     </entry>
425
-    <entry file="file://$PROJECT_DIR$/arraz/pom.xml">
426
-      <provider selected="true" editor-type-id="text-editor">
427
-        <state relative-caret-position="0">
428
-          <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
429
-          <folding />
430
-        </state>
431
-      </provider>
432
-    </entry>
433 586
     <entry file="file://$PROJECT_DIR$/arraz/src/main/java/Arraz.java">
434 587
       <provider selected="true" editor-type-id="text-editor">
435
-        <state relative-caret-position="0">
436
-          <caret line="0" column="15" lean-forward="false" selection-start-line="0" selection-start-column="15" selection-end-line="0" selection-end-column="15" />
437
-          <folding />
588
+        <state relative-caret-position="300">
589
+          <caret line="198" column="41" selection-start-line="198" selection-start-column="41" selection-end-line="198" selection-end-column="41" />
590
+          <folding>
591
+            <element signature="e#3440#3441#0" expanded="true" />
592
+            <element signature="e#3482#3483#0" expanded="true" />
593
+            <element signature="e#3556#3557#0" expanded="true" />
594
+            <element signature="e#3603#3604#0" expanded="true" />
595
+            <element signature="e#3677#3678#0" expanded="true" />
596
+            <element signature="e#3714#3715#0" expanded="true" />
597
+            <element signature="e#4954#4955#0" expanded="true" />
598
+            <element signature="e#4995#4996#0" expanded="true" />
599
+            <element signature="e#5042#5043#0" expanded="true" />
600
+            <element signature="e#5115#5116#0" expanded="true" />
601
+            <element signature="e#5173#5174#0" expanded="true" />
602
+            <element signature="e#5234#5235#0" expanded="true" />
603
+            <element signature="e#5305#5306#0" expanded="true" />
604
+            <element signature="e#5342#5343#0" expanded="true" />
605
+          </folding>
438 606
         </state>
439 607
       </provider>
440 608
     </entry>
441 609
     <entry file="file://$PROJECT_DIR$/arraz/src/test/java/ArrazTest.java">
442 610
       <provider selected="true" editor-type-id="text-editor">
443
-        <state relative-caret-position="34">
444
-          <caret line="2" column="23" lean-forward="false" selection-start-line="2" selection-start-column="23" selection-end-line="2" selection-end-column="23" />
445
-          <folding />
446
-        </state>
447
-      </provider>
448
-    </entry>
449
-    <entry file="file://$PROJECT_DIR$/README.md">
450
-      <provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
451
-        <state split_layout="SPLIT">
452
-          <first_editor relative-caret-position="306">
453
-            <caret line="18" column="0" lean-forward="true" selection-start-line="18" selection-start-column="0" selection-end-line="18" selection-end-column="0" />
454
-            <folding />
455
-          </first_editor>
456
-          <second_editor />
611
+        <state relative-caret-position="300">
612
+          <caret line="462" column="5" lean-forward="true" selection-start-line="462" selection-start-column="5" selection-end-line="462" selection-end-column="5" />
613
+          <folding>
614
+            <element signature="imports" expanded="true" />
615
+          </folding>
457 616
         </state>
458 617
       </provider>
459 618
     </entry>
460 619
   </component>
461 620
   <component name="masterDetails">
462 621
     <states>
622
+      <state key="ArtifactsStructureConfigurable.UI">
623
+        <settings>
624
+          <artifact-editor />
625
+          <splitter-proportions>
626
+            <option name="proportions">
627
+              <list>
628
+                <option value="0.2" />
629
+              </list>
630
+            </option>
631
+          </splitter-proportions>
632
+        </settings>
633
+      </state>
634
+      <state key="FacetStructureConfigurable.UI">
635
+        <settings>
636
+          <last-edited>No facets are configured</last-edited>
637
+          <splitter-proportions>
638
+            <option name="proportions">
639
+              <list>
640
+                <option value="0.2" />
641
+              </list>
642
+            </option>
643
+          </splitter-proportions>
644
+        </settings>
645
+      </state>
646
+      <state key="GlobalLibrariesConfigurable.UI">
647
+        <settings>
648
+          <splitter-proportions>
649
+            <option name="proportions">
650
+              <list>
651
+                <option value="0.2" />
652
+              </list>
653
+            </option>
654
+          </splitter-proportions>
655
+        </settings>
656
+      </state>
657
+      <state key="JdkListConfigurable.UI">
658
+        <settings>
659
+          <last-edited>1.8</last-edited>
660
+          <splitter-proportions>
661
+            <option name="proportions">
662
+              <list>
663
+                <option value="0.2" />
664
+              </list>
665
+            </option>
666
+          </splitter-proportions>
667
+        </settings>
668
+      </state>
669
+      <state key="ModuleStructureConfigurable.UI">
670
+        <settings>
671
+          <last-edited>ArraysGoneWild</last-edited>
672
+          <splitter-proportions>
673
+            <option name="proportions">
674
+              <list>
675
+                <option value="0.2" />
676
+                <option value="0.6" />
677
+              </list>
678
+            </option>
679
+          </splitter-proportions>
680
+        </settings>
681
+      </state>
463 682
       <state key="ProjectJDKs.UI">
464 683
         <settings>
465 684
           <last-edited>1.8</last-edited>
@@ -472,6 +691,18 @@
472 691
           </splitter-proportions>
473 692
         </settings>
474 693
       </state>
694
+      <state key="ProjectLibrariesConfigurable.UI">
695
+        <settings>
696
+          <last-edited>Maven: junit:junit:4.12</last-edited>
697
+          <splitter-proportions>
698
+            <option name="proportions">
699
+              <list>
700
+                <option value="0.2" />
701
+              </list>
702
+            </option>
703
+          </splitter-proportions>
704
+        </settings>
705
+      </state>
475 706
     </states>
476 707
   </component>
477 708
 </project>

+ 3
- 2
arraz/arraz.iml View File

@@ -1,6 +1,6 @@
1 1
 <?xml version="1.0" encoding="UTF-8"?>
2 2
 <module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
3
-  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5">
3
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
4 4
     <output url="file://$MODULE_DIR$/target/classes" />
5 5
     <output-test url="file://$MODULE_DIR$/target/test-classes" />
6 6
     <content url="file://$MODULE_DIR$">
@@ -11,6 +11,7 @@
11 11
     </content>
12 12
     <orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
13 13
     <orderEntry type="sourceFolder" forTests="false" />
14
-    <orderEntry type="library" name="Maven: junit:junit:4.0" level="project" />
14
+    <orderEntry type="library" name="Maven: junit:junit:4.12" level="project" />
15
+    <orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
15 16
   </component>
16 17
 </module>

+ 1
- 1
arraz/pom.xml View File

@@ -11,7 +11,7 @@
11 11
         <dependency>
12 12
             <groupId>junit</groupId>
13 13
             <artifactId>junit</artifactId>
14
-            <version>4.0</version>
14
+            <version>4.12</version>
15 15
         </dependency>
16 16
     </dependencies>
17 17
 

+ 199
- 0
arraz/src/main/java/Arraz.java View File

@@ -1,2 +1,201 @@
1
+import java.util.*;
2
+
1 3
 public class Arraz {
4
+
5
+
6
+    public int sumValuesOfArray(int[] array){
7
+        int sum = 0;
8
+        for (int each:array) {
9
+            sum += each;
10
+        }
11
+        return sum;
12
+    }
13
+
14
+    public double sumDoublesOfArray(double[] array){
15
+        double sum = 0;
16
+        for (double each:array) {
17
+            sum += each;
18
+        }
19
+        return sum;
20
+    }
21
+
22
+    public int averageOfArray(int[] array) {
23
+        return sumValuesOfArray(array)/array.length;
24
+    }
25
+
26
+    public double doubleAverageOfArray(double[] array){
27
+        return sumDoublesOfArray(array)/array.length;
28
+    }
29
+
30
+    public boolean containsValue(int[] array, int value){
31
+        for(int each: array){
32
+            if (each == value){
33
+                return true;
34
+            }
35
+        }
36
+        return false;
37
+    }
38
+
39
+    public int[] reverseArray(int[] array){
40
+        int[] newArray = new int[array.length];
41
+        int index = 0;
42
+        for (int i = array.length - 1; i >= 0; i--){
43
+            newArray[index] = array[i];
44
+            index++;
45
+        }
46
+        return newArray;
47
+    }
48
+
49
+    public OddEven oddEvens(int[] array){
50
+        int evens = 0;
51
+        int odds = 0;
52
+        for(int each: array){
53
+            if(each % 2 ==0){
54
+                evens++;
55
+            } else {
56
+                odds++;
57
+            }
58
+        }
59
+        return new OddEven(odds, evens);
60
+    }
61
+
62
+    public int getIndexOf(int[] array, int value){
63
+        for (int i = 0; i < array.length -1; i++){
64
+            if (array[i] == value){
65
+                return i;
66
+            }
67
+        }
68
+        return -1;
69
+    }
70
+
71
+    public Integer[] copyArrayByIterator(Integer[] array){
72
+        Integer[] newArray = new Integer[array.length];
73
+        Iterator<Integer> iterator = Arrays.asList(array).iterator();
74
+        int index = 0;
75
+        while(iterator.hasNext()) {
76
+            newArray[index] = iterator.next();
77
+            index++;
78
+        }
79
+        return newArray;
80
+        }
81
+
82
+    public int[] copyArrayByLoop(int[] array){
83
+        int[] newArray = new int[array.length];
84
+        int index = 0;
85
+        for(int each:array){
86
+            newArray[index] = each;
87
+            index++;
88
+        }
89
+        return newArray;
90
+    }
91
+
92
+    public int[] removeElementFromArray(int[] array, int value){
93
+        int[] newArray = new int[array.length -1];
94
+        int index = 0;
95
+        for (int each:array) {
96
+            if(each!=value){
97
+                newArray[index] =each;
98
+                index++;
99
+            }
100
+        }
101
+        return newArray;
102
+    }
103
+
104
+    public int[] insertArrayAt(int[] array, int index, int value){
105
+        int[] newArray = new int[array.length + 1];
106
+        int counter = 0;
107
+        for (int i = 0; i < array.length; i++) {
108
+            if (counter == index){
109
+                newArray[counter] = value;
110
+                counter++;
111
+                i--;
112
+            }else{
113
+                newArray[counter] = array[i];
114
+                counter++;
115
+            }
116
+        }
117
+        return newArray;
118
+        }
119
+
120
+    public MaxMin findMaxMinOfArray(int[] array){
121
+        Arrays.sort(array);
122
+        return new MaxMin(array[array.length - 1], array[0]);
123
+    }
124
+
125
+    public Integer[] removeDupesFromArray(Integer[] array){
126
+        Set<Integer> integerSet = new LinkedHashSet<>(Arrays.asList(array));
127
+        return integerSet.toArray(new Integer[0]);
128
+    }
129
+
130
+    public Double find2ndLargestValueFromArray(Double[] array){
131
+        Set<Double> set = new TreeSet<>(Arrays.asList(array));
132
+        Double[] newArray = set.toArray(new Double[0]);
133
+        return newArray[newArray.length - 2];
134
+    }
135
+
136
+    public List<Integer> makeMeAnArrayListFromArray(Integer[] array){
137
+       return Arrays.asList(array);
138
+    }
139
+
140
+    public Integer[] makeMeAnArrayFromArrayList(List<Integer> list){
141
+        return list.toArray(new Integer[0]);
142
+    }
143
+
144
+    public boolean check2ArraysForEqual(int[] array1, int[] array2){
145
+        return Arrays.equals(array1, array2);
146
+    }
147
+
148
+    public double averageArrayWithoutMaxMin(int[] array){
149
+        MaxMin maxMin = findMaxMinOfArray(array);
150
+        int[] noMax = removeElementFromArray(array, maxMin.getMax());
151
+        int[] noMaxMin = removeElementFromArray(noMax, maxMin.getMin());
152
+        return averageOfArray(noMaxMin);
153
+    }
154
+
155
+    public boolean arrayHas65and77(Integer[] array){
156
+        List<Integer> list = Arrays.asList(array);
157
+            if(list.contains(65) && list.contains(77)){
158
+                return true;
159
+            }else{return false;}
160
+    }
161
+
162
+    public boolean theTotalOfTenIs30(Integer[] array){
163
+        int sum10 = 0;
164
+        for (Integer each:array){
165
+            if(each == 10){
166
+                sum10 += each;
167
+                if(sum10 == 30){
168
+                    return true;
169
+                }
170
+            }
171
+        }
172
+        return false;
173
+    }
174
+
175
+    public Integer[] min2Array(Integer[] array){
176
+        Set<Integer> minSet = new TreeSet<>(Arrays.asList(array));
177
+        return Arrays.copyOfRange(minSet.toArray(new Integer[0]), 0, 2);
178
+    }
179
+
180
+    public int[] reverseCopy(int[] array){
181
+       return reverseArray(array);
182
+    }
183
+
184
+    public int[] removeLastItemCopy(int[] array){
185
+        return removeElementFromArray(array, array[array.length-1]);
186
+    }
187
+
188
+    public int[] removeFirstItemCopy(int[] array){
189
+        return removeElementFromArray(array, array[0]);
190
+    }
191
+
192
+    public int[] insertStartCopy(int[] array, int value){
193
+        return insertArrayAt(array, 0, value);
194
+    }
195
+
196
+    public Integer[] insertEndCopy(Integer[] array, int value){
197
+        List<Integer> list = new ArrayList<>(Arrays.asList(array));
198
+        list.add(value);
199
+        return list.toArray(new Integer[0]);
200
+    }
2 201
 }

+ 25
- 0
arraz/src/main/java/MaxMin.java View File

@@ -0,0 +1,25 @@
1
+public class MaxMin {
2
+    private int max;
3
+    private int min;
4
+
5
+    public MaxMin(int max, int min) {
6
+        this.max = max;
7
+        this.min = min;
8
+    }
9
+
10
+    public int getMax() {
11
+        return max;
12
+    }
13
+
14
+    public void setMax(int max) {
15
+        this.max = max;
16
+    }
17
+
18
+    public int getMin() {
19
+        return min;
20
+    }
21
+
22
+    public void setMin(int min) {
23
+        this.min = min;
24
+    }
25
+}

+ 20
- 0
arraz/src/main/java/OddEven.java View File

@@ -0,0 +1,20 @@
1
+public class OddEven {
2
+    private int odd;
3
+    private int even;
4
+
5
+
6
+    public OddEven(int odd, int even) {
7
+        this.odd = odd;
8
+        this.even = even;
9
+    }
10
+
11
+    public int getOdd() {
12
+        return odd;
13
+    }
14
+
15
+
16
+    public int getEven() {
17
+        return even;
18
+    }
19
+
20
+}

+ 460
- 1
arraz/src/test/java/ArrazTest.java View File

@@ -1,5 +1,464 @@
1
-import static org.junit.Assert.*;
1
+
2
+
3
+import org.junit.Assert;
4
+import org.junit.Before;
5
+import org.junit.Test;
6
+import java.util.ArrayList;
7
+import java.util.Arrays;
8
+import java.util.List;
9
+
2 10
 
3 11
 public class ArrazTest {
4 12
 
13
+    private Arraz testArraz;
14
+    private OddEven oddEven1;
15
+    private MaxMin maxMin;
16
+    private int[] arr1;
17
+    private int[] arr2;
18
+    private double[] double1;
19
+    private double[] double2;
20
+
21
+    @Before
22
+    public void before() {
23
+        arr1 = new int[]{5, 10, 3, 29, 100};
24
+        arr2 = new int[]{2, 7, 432, 89};
25
+        double1 = new double[] {1.0, 0.5, 3.6, 38.4, 17.3, 62.0, 9.0, 3.375, 0, 3.14159};
26
+        double2 =  new double[]{6.0, 2.897, 3.1, 654.3, 5.21, 78.9};
27
+        testArraz = new Arraz();
28
+        oddEven1 = new OddEven(3, 2);
29
+        maxMin = new MaxMin(100,3);
30
+    }
31
+
32
+    @Test
33
+    public void test1SumValuesOfArray1() {
34
+        int expected = 147;
35
+        int actual = testArraz.sumValuesOfArray(arr1);
36
+
37
+         Assert.assertEquals(expected, actual);
38
+    }
39
+
40
+    @Test
41
+    public void test2SumValuesOfArray2(){
42
+        int expected = 530;
43
+        int actual = testArraz.sumValuesOfArray(arr2);
44
+
45
+        Assert.assertEquals(expected, actual);
46
+    }
47
+
48
+    @Test
49
+    public void testSumDoublesOfArray1(){
50
+        double expected =138.31659;
51
+        double actual = testArraz.sumDoublesOfArray(double1);
52
+
53
+        Assert.assertEquals(expected, actual, .01);
54
+    }
55
+
56
+    @Test
57
+    public void testSumDoublesOfArray2(){
58
+        double expected = 0;
59
+        double actual = testArraz.sumDoublesOfArray(new double[]{0.0,0.0});
60
+
61
+        Assert.assertEquals(expected, actual, .01);
62
+    }
63
+
64
+    @Test
65
+    public void testAverageOfArray1(){
66
+        int expected = 29;
67
+        int actual = testArraz.averageOfArray(arr1);
68
+
69
+        Assert.assertEquals(expected, actual);
70
+    }
71
+
72
+    @Test
73
+    public void testAverageOfArray2(){
74
+        int expected = 132;
75
+        int actual = testArraz.averageOfArray(arr2);
76
+
77
+        Assert.assertEquals(expected, actual);
78
+    }
79
+
80
+    @Test
81
+    public void testDoubleAverageOfArray1(){
82
+        double expected = 13.831659;
83
+        double actual = testArraz.doubleAverageOfArray(double1);
84
+
85
+        Assert.assertEquals(expected, actual, .01);
86
+    }
87
+
88
+    @Test
89
+    public void testDoubleAverageOfArray2(){
90
+        double expected = 0;
91
+        double actual = testArraz.doubleAverageOfArray(new double[]{0.0, 0.0});
92
+
93
+        Assert.assertEquals(expected, actual, 01);
94
+    }
95
+
96
+    @Test
97
+    public void testContainsValue1(){
98
+        boolean actual = testArraz.containsValue(arr1, 29);
99
+        Assert.assertTrue(actual);
100
+    }
101
+
102
+    @Test
103
+    public void testContainsValue2(){
104
+        boolean actual = testArraz.containsValue(arr1, 50000);
105
+        Assert.assertFalse(actual);
106
+    }
107
+
108
+    @Test
109
+    public void testReverseArray1(){
110
+        int[] expected =new int[]{100, 29, 3, 10, 5};
111
+        int[] actual = testArraz.reverseArray(arr1);
112
+
113
+        Assert.assertArrayEquals(expected, actual);
114
+    }
115
+
116
+    @Test
117
+    public void testReverseArray2(){
118
+        int[] expected = arr1;
119
+        int[] actual = testArraz.reverseArray(arr1);
120
+
121
+        Assert.assertFalse(Arrays.equals(expected, actual));
122
+    }
123
+
124
+    @Test
125
+    public void testOddEvens1(){
126
+        OddEven actual = testArraz.oddEvens(arr1);
127
+        Assert.assertEquals(oddEven1.getOdd(), actual.getOdd());
128
+    }
129
+
130
+    @Test
131
+    public void testOddEvens2(){
132
+        OddEven actual = testArraz.oddEvens(arr1);
133
+        Assert.assertEquals(oddEven1.getEven(), actual.getEven());
134
+    }
135
+
136
+    @Test
137
+    public void testFindIndexOf1(){
138
+        int expected = 3;
139
+        int actual = testArraz.getIndexOf(arr1, 29);
140
+
141
+        Assert.assertEquals(expected, actual);
142
+    }
143
+
144
+    @Test
145
+    public void testFindIndexOf2(){
146
+        int expected = -1;
147
+        int actual = testArraz.getIndexOf(arr1, 500);
148
+
149
+        Assert.assertEquals(expected,actual);
150
+    }
151
+
152
+    @Test
153
+    public void testCopyArrayByIterator1(){
154
+        Integer[] expected = new Integer[]{1,2,3,4,5};
155
+        Integer[] actual = testArraz.copyArrayByIterator(expected);
156
+
157
+        Assert.assertArrayEquals(expected, actual);
158
+    }
159
+
160
+    @Test
161
+    public void testCopyArrayByIterator2(){
162
+        Integer[] expected = new Integer[]{10, 3, 5, 43};
163
+        Integer[] actual = testArraz.copyArrayByIterator(expected);
164
+
165
+        Assert.assertArrayEquals(expected, actual);
166
+    }
167
+
168
+    @Test
169
+    public void testCopyArrayByLoop1(){
170
+        int[] expected = arr1;
171
+        int[] actual = testArraz.copyArrayByLoop(arr1);
172
+
173
+        Assert.assertArrayEquals(expected, actual);
174
+    }
175
+
176
+    @Test
177
+    public void testCopyArrayByLoop2(){
178
+        Assert.assertFalse(Arrays.equals(arr1, testArraz.copyArrayByLoop(arr2)));
179
+    }
180
+
181
+    @Test
182
+    public void testRemoveElementFromArray1(){
183
+        int[] expected = new int[]{5, 10, 29, 100};
184
+        int[] actual = testArraz.removeElementFromArray(arr1, 3);
185
+
186
+        Assert.assertArrayEquals(expected, actual);
187
+    }
188
+
189
+    @Test
190
+    public void testRemoveElementFromArray2(){
191
+        int[] expected = new int[]{2, 7, 89};
192
+        int[] actual = testArraz.removeElementFromArray(arr2, 432);
193
+
194
+        Assert.assertArrayEquals(expected, actual);
195
+    }
196
+
197
+    @Test
198
+    public void testInsertArrayAt1(){
199
+        int[] expected = new int[]{5, 10, 3, 17, 29, 100};
200
+        int[] actual = testArraz.insertArrayAt(arr1, 3, 17);
201
+        System.out.println(Arrays.toString(actual));
202
+
203
+        Assert.assertArrayEquals(expected, actual);
204
+    }
205
+
206
+    @Test
207
+    public void testInsertArrayAt2(){
208
+        int[] expected =  new int[]{2, 6, 7, 432, 89};
209
+        int[] actual = testArraz.insertArrayAt(arr2, 1, 6);
210
+        System.out.println(Arrays.toString(actual));
211
+
212
+        Assert.assertArrayEquals(expected, actual);
213
+    }
214
+
215
+    @Test
216
+    public void testFindMaxMinOfArray1(){
217
+        Assert.assertEquals(maxMin.getMax(), testArraz.findMaxMinOfArray(arr1).getMax());
218
+    }
219
+
220
+    @Test
221
+    public void testFindMaxMinOfArray2(){
222
+        Assert.assertEquals(maxMin.getMin(), testArraz.findMaxMinOfArray(arr1).getMin());
223
+    }
224
+
225
+    @Test
226
+    public void testRemoveDupesFromArray1(){
227
+        Integer[] array1 = new Integer[]{1,3 ,4, 3, 7, 7, 10};
228
+        Integer[] expected = new Integer[]{1, 3, 4, 7, 10};
229
+        Integer[] actual = testArraz.removeDupesFromArray(array1);
230
+        System.out.println(Arrays.toString(actual));
231
+
232
+        Assert.assertArrayEquals(expected, actual);
233
+    }
234
+
235
+    @Test
236
+    public void testRemoveDupesFromArray2(){
237
+        Integer[] array1 = new Integer[]{5, 1, 5, 5, 5 ,5};
238
+        Integer[] expected = new Integer[]{5, 1};
239
+        Integer[] actual = testArraz.removeDupesFromArray(array1);
240
+        System.out.println(Arrays.toString(actual));
241
+
242
+        Assert.assertArrayEquals(expected, actual);
243
+    }
244
+
245
+    @Test
246
+    public void testFind2ndLargestFromArray1(){
247
+        Double expected = 99.3;
248
+        Double[] doubleArr = new Double[]{10.4, 99.3, 89.45, 23.0, 1.1, 199.4, 199.4};
249
+        Double actual = testArraz.find2ndLargestValueFromArray(doubleArr);
250
+
251
+        Assert.assertEquals(expected, actual, .01);
252
+    }
253
+
254
+    @Test
255
+    public void testFind2ndLargestFromArray2(){
256
+        Double expected = 3.149;
257
+        Double[] doubleArr = new Double[]{3.14, 3.14, 3.14, 3.14, 54.9};
258
+        Double actual = testArraz.find2ndLargestValueFromArray(doubleArr);
259
+
260
+        Assert.assertEquals(expected, actual, .01);
261
+    }
262
+
263
+    @Test
264
+    public void testMakeMeAnArrayListFromArray1(){
265
+        List<Integer> expected= new ArrayList<>();
266
+        expected.add(5);
267
+        expected.add(4);
268
+        expected.add(3);
269
+        Integer[] array = new Integer[]{5, 4, 3};
270
+        List<Integer> actual = testArraz.makeMeAnArrayListFromArray(array);
271
+
272
+        Assert.assertEquals(expected, actual);
273
+    }
274
+
275
+    @Test
276
+    public void testMakeMeAnArrayListFromArray2(){
277
+        List<Integer> expected = new ArrayList<>();
278
+        expected.add(100);
279
+        expected.add(37);
280
+        expected.add(10);
281
+        expected.add(67);
282
+        Integer[] array = new Integer[]{100, 37, 10, 67};
283
+        List<Integer> actual = testArraz.makeMeAnArrayListFromArray(array);
284
+
285
+        Assert.assertEquals(expected, actual);
286
+    }
287
+
288
+    @Test
289
+    public void testMakeMeAnArrayFromArrayList1(){
290
+        Integer[] expected = new Integer[]{10, 7, 23, 50};
291
+        List<Integer> list = new ArrayList<>();
292
+        list.add(10);
293
+        list.add(7);
294
+        list.add(23);
295
+        list.add(50);
296
+        Integer[] actual = testArraz.makeMeAnArrayFromArrayList(list);
297
+
298
+        Assert.assertArrayEquals(expected, actual);
299
+    }
300
+
301
+    @Test
302
+    public void testMakeMeAnArrayFromArrayList2(){
303
+        Integer[] expected = new Integer[]{43, 19, 99, 6};
304
+        List<Integer> list = new ArrayList<>();
305
+        list.add(43);
306
+        list.add(19);
307
+        list.add(99);
308
+        list.add(6);
309
+        Integer[] actual = testArraz.makeMeAnArrayFromArrayList(list);
310
+
311
+        Assert.assertArrayEquals(expected, actual);
312
+    }
313
+
314
+
315
+    @Test
316
+    public void testCheck2ArraysForEqual1(){
317
+        int[] expected = new int[]{5, 10, 3, 29, 100};
318
+        Assert.assertTrue(testArraz.check2ArraysForEqual(arr1, expected));
319
+    }
320
+
321
+    @Test
322
+    public void testCheck2ArraysForEqual2(){
323
+        int[] expected = new int[]{100, 900, 1, 32};
324
+        Assert.assertFalse(testArraz.check2ArraysForEqual(arr1, expected));
325
+    }
326
+
327
+    @Test
328
+    public void testAverageArrayWithoutMaxMin(){
329
+        double expected = 14.0;
330
+        double actual = testArraz.averageArrayWithoutMaxMin(arr1);
331
+
332
+        Assert.assertEquals(expected, actual, .01);
333
+    }
334
+
335
+    @Test
336
+    public void testAverageArrayWithoutMaxMin2(){
337
+        double expected = 48;
338
+        double actual = testArraz.averageArrayWithoutMaxMin(arr2);
339
+        System.out.println(actual);
340
+
341
+        Assert.assertEquals(expected, actual, .01);
342
+    }
343
+
344
+    @Test
345
+    public void testArrayHas65and771(){
346
+        Integer[] array = new Integer[]{65, 10, 34, 7, 77, 89};
347
+        Assert.assertTrue(testArraz.arrayHas65and77(array));
348
+    }
349
+
350
+    @Test
351
+    public void testArrayHas65and772(){
352
+        Integer[] array = new Integer[]{3, 1, 9999, 5, 44};
353
+        Assert.assertFalse(testArraz.arrayHas65and77(array));
354
+    }
355
+
356
+    @Test
357
+    public void testTheTotalOfTenIs301() {
358
+        Integer[] array = new Integer[]{10, 4, 3, 10, 56, 10};
359
+        Assert.assertTrue(testArraz.theTotalOfTenIs30(array));
360
+    }
361
+
362
+    @Test
363
+    public void testTheTotalOfTenIs302(){
364
+        Integer[] array = new Integer[]{10, 98, 2, 34,10};
365
+        Assert.assertFalse(testArraz.theTotalOfTenIs30(array));
366
+    }
367
+
368
+    @Test
369
+    public void testMin2Array1(){
370
+        Integer[] expected = new Integer[]{3, 5};
371
+        Integer[] actual = testArraz.min2Array(new Integer[]{100, 54, 10, 78, 10, 5, 3});
372
+
373
+        Assert.assertArrayEquals(expected, actual);
374
+    }
375
+
376
+    @Test
377
+    public void testMin2Array(){
378
+        Integer[] expected = new Integer[]{1, 10};
379
+        Integer[] actual = testArraz.min2Array(new Integer[]{1,1,1,1,10});
380
+
381
+        Assert.assertArrayEquals(expected, actual);
382
+    }
383
+
384
+    @Test
385
+    public void testReverseCopy1(){
386
+        int[] expected = new int[]{100, 29, 3, 10, 5};
387
+        int[] actual = testArraz.reverseCopy(arr1);
388
+
389
+        Assert.assertArrayEquals(expected,actual);
390
+    }
391
+
392
+    @Test
393
+    public void testReverseCopy2(){
394
+        int[] expected = new int[]{89, 432, 7, 2};
395
+        int[] actual = testArraz.reverseCopy(arr2);
396
+
397
+        Assert.assertArrayEquals(expected, actual);
398
+    }
399
+
400
+    @Test
401
+    public void testRemoveLastItemCopy1(){
402
+        int[] expected = new int[]{5, 10, 3, 29};
403
+        int[] actual = testArraz.removeLastItemCopy(arr1);
404
+
405
+        Assert.assertArrayEquals(expected, actual);
406
+    }
407
+
408
+    @Test
409
+    public void testRemoveLastItemCopy2(){
410
+        int[] expected =  new int[]{2, 7, 432};
411
+        int[] actual = testArraz.removeLastItemCopy(arr2);
412
+
413
+        Assert.assertArrayEquals(expected, actual);
414
+    }
415
+
416
+    @Test
417
+    public void testRemoveFirstItemCopy1(){
418
+        int[] expected = new int[]{7, 432, 89};
419
+        int[] actual = testArraz.removeFirstItemCopy(arr2);
420
+
421
+        Assert.assertArrayEquals(expected, actual);
422
+    }
423
+
424
+    @Test
425
+    public void testRemoveFirstItemCopy2(){
426
+        int[] expected = new int[]{10, 3, 29, 100};
427
+        int[] actual = testArraz.removeFirstItemCopy(arr1);
428
+
429
+        Assert.assertArrayEquals(expected, actual);
430
+    }
431
+
432
+    @Test
433
+    public void testInsertStartCopy1(){
434
+        int[] expected = new int[]{4, 5, 10, 3, 29, 100};
435
+        int[] actual = testArraz.insertStartCopy(arr1, 4);
436
+
437
+        Assert.assertArrayEquals(expected, actual);
438
+    }
439
+
440
+    @Test
441
+    public void testInsertStartCopy2(){
442
+        int[] expected = new int[]{56, 2, 7, 432, 89};
443
+        int[] actual = testArraz.insertStartCopy(arr2, 56);
444
+
445
+        Assert.assertArrayEquals(expected, actual);
446
+    }
447
+
448
+    @Test
449
+    public void testInsertEndCopy1(){
450
+        Integer[] expected = new Integer[]{2, 7, 432, 89, 9};
451
+        Integer[] actual = testArraz.insertEndCopy(new Integer[]{2, 7, 432, 89}, 9);
452
+
453
+        Assert.assertArrayEquals(expected, actual);
454
+    }
455
+
456
+    @Test
457
+    public void testInsertEndCopy2(){
458
+        Integer[] expected = new Integer[]{5, 10, 3, 29, 100, 90};
459
+        Integer[] actual = testArraz.insertEndCopy(new Integer[]{5, 10, 3, 29, 100}, 90);
460
+        System.out.println(Arrays.toString(actual));
461
+
462
+        Assert.assertArrayEquals(expected, actual);
463
+    }
5 464
 }