diff --git a/bootcamps-ejercicios/.gradle/7.1.1/dependencies-accessors/dependencies-accessors.lock b/bootcamps-ejercicios/.gradle/7.1.1/dependencies-accessors/dependencies-accessors.lock new file mode 100644 index 0000000..80dd968 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.1.1/dependencies-accessors/dependencies-accessors.lock differ diff --git a/bootcamps-ejercicios/.gradle/7.1.1/dependencies-accessors/gc.properties b/bootcamps-ejercicios/.gradle/7.1.1/dependencies-accessors/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/bootcamps-ejercicios/.gradle/7.1.1/executionHistory/executionHistory.bin b/bootcamps-ejercicios/.gradle/7.1.1/executionHistory/executionHistory.bin new file mode 100644 index 0000000..75c62f3 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.1.1/executionHistory/executionHistory.bin differ diff --git a/bootcamps-ejercicios/.gradle/7.1.1/executionHistory/executionHistory.lock b/bootcamps-ejercicios/.gradle/7.1.1/executionHistory/executionHistory.lock new file mode 100644 index 0000000..289da38 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.1.1/executionHistory/executionHistory.lock differ diff --git a/bootcamps-ejercicios/.gradle/7.1.1/fileChanges/last-build.bin b/bootcamps-ejercicios/.gradle/7.1.1/fileChanges/last-build.bin new file mode 100644 index 0000000..f76dd23 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.1.1/fileChanges/last-build.bin differ diff --git a/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/fileHashes.bin b/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/fileHashes.bin new file mode 100644 index 0000000..7d9cf61 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/fileHashes.bin differ diff --git a/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/fileHashes.lock b/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/fileHashes.lock new file mode 100644 index 0000000..34d937a Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/fileHashes.lock differ diff --git a/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/resourceHashesCache.bin b/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/resourceHashesCache.bin new file mode 100644 index 0000000..1102c90 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.1.1/fileHashes/resourceHashesCache.bin differ diff --git a/bootcamps-ejercicios/.gradle/7.1.1/gc.properties b/bootcamps-ejercicios/.gradle/7.1.1/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/bootcamps-ejercicios/.gradle/7.4/checksums/checksums.lock b/bootcamps-ejercicios/.gradle/7.4/checksums/checksums.lock new file mode 100644 index 0000000..919dde5 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.4/checksums/checksums.lock differ diff --git a/bootcamps-ejercicios/.gradle/7.4/dependencies-accessors/dependencies-accessors.lock b/bootcamps-ejercicios/.gradle/7.4/dependencies-accessors/dependencies-accessors.lock new file mode 100644 index 0000000..2bdadf1 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.4/dependencies-accessors/dependencies-accessors.lock differ diff --git a/bootcamps-ejercicios/.gradle/7.4/dependencies-accessors/gc.properties b/bootcamps-ejercicios/.gradle/7.4/dependencies-accessors/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/bootcamps-ejercicios/.gradle/7.4/fileChanges/last-build.bin b/bootcamps-ejercicios/.gradle/7.4/fileChanges/last-build.bin new file mode 100644 index 0000000..f76dd23 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.4/fileChanges/last-build.bin differ diff --git a/bootcamps-ejercicios/.gradle/7.4/fileHashes/fileHashes.lock b/bootcamps-ejercicios/.gradle/7.4/fileHashes/fileHashes.lock new file mode 100644 index 0000000..64e68cb Binary files /dev/null and b/bootcamps-ejercicios/.gradle/7.4/fileHashes/fileHashes.lock differ diff --git a/bootcamps-ejercicios/.gradle/7.4/gc.properties b/bootcamps-ejercicios/.gradle/7.4/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/bootcamps-ejercicios/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/bootcamps-ejercicios/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 0000000..d8dbe06 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/bootcamps-ejercicios/.gradle/buildOutputCleanup/cache.properties b/bootcamps-ejercicios/.gradle/buildOutputCleanup/cache.properties new file mode 100644 index 0000000..31786f6 --- /dev/null +++ b/bootcamps-ejercicios/.gradle/buildOutputCleanup/cache.properties @@ -0,0 +1,2 @@ +#Tue Sep 13 12:18:13 CDT 2022 +gradle.version=7.1.1 diff --git a/bootcamps-ejercicios/.gradle/buildOutputCleanup/outputFiles.bin b/bootcamps-ejercicios/.gradle/buildOutputCleanup/outputFiles.bin new file mode 100644 index 0000000..edc4344 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/buildOutputCleanup/outputFiles.bin differ diff --git a/bootcamps-ejercicios/.gradle/checksums/checksums.lock b/bootcamps-ejercicios/.gradle/checksums/checksums.lock new file mode 100644 index 0000000..f3b5463 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/checksums/checksums.lock differ diff --git a/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-2040908888/project-info.ser b/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-2040908888/project-info.ser new file mode 100644 index 0000000..c004bc2 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-2040908888/project-info.ser differ diff --git a/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-882723960/gradle.properties b/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-882723960/gradle.properties new file mode 100644 index 0000000..302c542 --- /dev/null +++ b/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-882723960/gradle.properties @@ -0,0 +1,3 @@ +netbeans.org-netbeans-modules-gradle.jdkPlatform=JDK_16 +netbeans.org-netbeans-modules-gradle.augmented_2e_build=true +netbeans.org-netbeans-modules-gradle.include_2e_open_2e_projects=false diff --git a/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-882723960/project-info.ser b/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-882723960/project-info.ser new file mode 100644 index 0000000..24108c3 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/nb-cache/bootcamps-ejercicios-882723960/project-info.ser differ diff --git a/bootcamps-ejercicios/.gradle/nb-cache/subprojects.ser b/bootcamps-ejercicios/.gradle/nb-cache/subprojects.ser new file mode 100644 index 0000000..7d17f62 Binary files /dev/null and b/bootcamps-ejercicios/.gradle/nb-cache/subprojects.ser differ diff --git a/bootcamps-ejercicios/.gradle/nb-cache/trust/B86B4B34346076FFDACF10CEE44BAC3A91B1813AEE83B5BF14672D063FE541B8 b/bootcamps-ejercicios/.gradle/nb-cache/trust/B86B4B34346076FFDACF10CEE44BAC3A91B1813AEE83B5BF14672D063FE541B8 new file mode 100644 index 0000000..12dcd51 --- /dev/null +++ b/bootcamps-ejercicios/.gradle/nb-cache/trust/B86B4B34346076FFDACF10CEE44BAC3A91B1813AEE83B5BF14672D063FE541B8 @@ -0,0 +1 @@ +0A8AC913640AA324524C57962B4CDAF1B3067CAC6529EA9F2A08BE915D7538F4 diff --git a/bootcamps-ejercicios/.gradle/vcs-1/gc.properties b/bootcamps-ejercicios/.gradle/vcs-1/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/bootcamps-ejercicios/build.gradle b/bootcamps-ejercicios/build.gradle new file mode 100644 index 0000000..3cae2d7 --- /dev/null +++ b/bootcamps-ejercicios/build.gradle @@ -0,0 +1,19 @@ +plugins { + id 'java' +} + +group 'org.example' +version '1.0-SNAPSHOT' + +repositories { + mavenCentral() +} + +dependencies { + testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1' + testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1' +} + +test { + useJUnitPlatform() +} \ No newline at end of file diff --git a/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/Multidimensional.class b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/Multidimensional.class new file mode 100644 index 0000000..1e225ef Binary files /dev/null and b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/Multidimensional.class differ diff --git a/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/Unidimensional.class b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/Unidimensional.class new file mode 100644 index 0000000..64a0d90 Binary files /dev/null and b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/Unidimensional.class differ diff --git a/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/impl/MultidimensionalImpl.class b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/impl/MultidimensionalImpl.class new file mode 100644 index 0000000..5fdd991 Binary files /dev/null and b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/impl/MultidimensionalImpl.class differ diff --git a/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/impl/UnidimensionalImpl.class b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/impl/UnidimensionalImpl.class new file mode 100644 index 0000000..f23b569 Binary files /dev/null and b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/impl/UnidimensionalImpl.class differ diff --git a/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/model/Posicion.class b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/model/Posicion.class new file mode 100644 index 0000000..1e334e1 Binary files /dev/null and b/bootcamps-ejercicios/build/classes/java/main/com/oracle/arrays/model/Posicion.class differ diff --git a/bootcamps-ejercicios/build/classes/java/test/com/oracle/arrays/MultidimensionalTest.class b/bootcamps-ejercicios/build/classes/java/test/com/oracle/arrays/MultidimensionalTest.class new file mode 100644 index 0000000..ddc6eb9 Binary files /dev/null and b/bootcamps-ejercicios/build/classes/java/test/com/oracle/arrays/MultidimensionalTest.class differ diff --git a/bootcamps-ejercicios/build/classes/java/test/com/oracle/arrays/UnidimensionalTest.class b/bootcamps-ejercicios/build/classes/java/test/com/oracle/arrays/UnidimensionalTest.class new file mode 100644 index 0000000..328bb12 Binary files /dev/null and b/bootcamps-ejercicios/build/classes/java/test/com/oracle/arrays/UnidimensionalTest.class differ diff --git a/bootcamps-ejercicios/build/reports/tests/test/classes/com.oracle.arrays.MultidimensionalTest.html b/bootcamps-ejercicios/build/reports/tests/test/classes/com.oracle.arrays.MultidimensionalTest.html new file mode 100644 index 0000000..febfd32 --- /dev/null +++ b/bootcamps-ejercicios/build/reports/tests/test/classes/com.oracle.arrays.MultidimensionalTest.html @@ -0,0 +1,101 @@ + + + + + +Test results - MultidimensionalTest + + + + + +
+

MultidimensionalTest

+ +
+ + + + + +
+
+ + + + + + + +
+
+
2
+

tests

+
+
+
+
0
+

failures

+
+
+
+
0
+

ignored

+
+
+
+
0.043s
+

duration

+
+
+
+
+
+
100%
+

successful

+
+
+
+
+ +
+

Tests

+ + + + + + + + + + + + + + + + + + +
TestDurationResult
getDataTest()0.040spassed
getPositionTest()0.003spassed
+
+
+ +
+ + diff --git a/bootcamps-ejercicios/build/reports/tests/test/classes/com.oracle.arrays.UnidimensionalTest.html b/bootcamps-ejercicios/build/reports/tests/test/classes/com.oracle.arrays.UnidimensionalTest.html new file mode 100644 index 0000000..a730dcc --- /dev/null +++ b/bootcamps-ejercicios/build/reports/tests/test/classes/com.oracle.arrays.UnidimensionalTest.html @@ -0,0 +1,96 @@ + + + + + +Test results - UnidimensionalTest + + + + + +
+

UnidimensionalTest

+ +
+ + + + + +
+
+ + + + + + + +
+
+
1
+

tests

+
+
+
+
0
+

failures

+
+
+
+
0
+

ignored

+
+
+
+
0.002s
+

duration

+
+
+
+
+
+
100%
+

successful

+
+
+
+
+ +
+

Tests

+ + + + + + + + + + + + + +
TestDurationResult
ordenamientoTest()0.002spassed
+
+
+ +
+ + diff --git a/bootcamps-ejercicios/build/reports/tests/test/css/base-style.css b/bootcamps-ejercicios/build/reports/tests/test/css/base-style.css new file mode 100644 index 0000000..4afa73e --- /dev/null +++ b/bootcamps-ejercicios/build/reports/tests/test/css/base-style.css @@ -0,0 +1,179 @@ + +body { + margin: 0; + padding: 0; + font-family: sans-serif; + font-size: 12pt; +} + +body, a, a:visited { + color: #303030; +} + +#content { + padding-left: 50px; + padding-right: 50px; + padding-top: 30px; + padding-bottom: 30px; +} + +#content h1 { + font-size: 160%; + margin-bottom: 10px; +} + +#footer { + margin-top: 100px; + font-size: 80%; + white-space: nowrap; +} + +#footer, #footer a { + color: #a0a0a0; +} + +#line-wrapping-toggle { + vertical-align: middle; +} + +#label-for-line-wrapping-toggle { + vertical-align: middle; +} + +ul { + margin-left: 0; +} + +h1, h2, h3 { + white-space: nowrap; +} + +h2 { + font-size: 120%; +} + +ul.tabLinks { + padding-left: 0; + padding-top: 10px; + padding-bottom: 10px; + overflow: auto; + min-width: 800px; + width: auto !important; + width: 800px; +} + +ul.tabLinks li { + float: left; + height: 100%; + list-style: none; + padding-left: 10px; + padding-right: 10px; + padding-top: 5px; + padding-bottom: 5px; + margin-bottom: 0; + -moz-border-radius: 7px; + border-radius: 7px; + margin-right: 25px; + border: solid 1px #d4d4d4; + background-color: #f0f0f0; +} + +ul.tabLinks li:hover { + background-color: #fafafa; +} + +ul.tabLinks li.selected { + background-color: #c5f0f5; + border-color: #c5f0f5; +} + +ul.tabLinks a { + font-size: 120%; + display: block; + outline: none; + text-decoration: none; + margin: 0; + padding: 0; +} + +ul.tabLinks li h2 { + margin: 0; + padding: 0; +} + +div.tab { +} + +div.selected { + display: block; +} + +div.deselected { + display: none; +} + +div.tab table { + min-width: 350px; + width: auto !important; + width: 350px; + border-collapse: collapse; +} + +div.tab th, div.tab table { + border-bottom: solid #d0d0d0 1px; +} + +div.tab th { + text-align: left; + white-space: nowrap; + padding-left: 6em; +} + +div.tab th:first-child { + padding-left: 0; +} + +div.tab td { + white-space: nowrap; + padding-left: 6em; + padding-top: 5px; + padding-bottom: 5px; +} + +div.tab td:first-child { + padding-left: 0; +} + +div.tab td.numeric, div.tab th.numeric { + text-align: right; +} + +span.code { + display: inline-block; + margin-top: 0em; + margin-bottom: 1em; +} + +span.code pre { + font-size: 11pt; + padding-top: 10px; + padding-bottom: 10px; + padding-left: 10px; + padding-right: 10px; + margin: 0; + background-color: #f7f7f7; + border: solid 1px #d0d0d0; + min-width: 700px; + width: auto !important; + width: 700px; +} + +span.wrapped pre { + word-wrap: break-word; + white-space: pre-wrap; + word-break: break-all; +} + +label.hidden { + display: none; +} \ No newline at end of file diff --git a/bootcamps-ejercicios/build/reports/tests/test/css/style.css b/bootcamps-ejercicios/build/reports/tests/test/css/style.css new file mode 100644 index 0000000..3dc4913 --- /dev/null +++ b/bootcamps-ejercicios/build/reports/tests/test/css/style.css @@ -0,0 +1,84 @@ + +#summary { + margin-top: 30px; + margin-bottom: 40px; +} + +#summary table { + border-collapse: collapse; +} + +#summary td { + vertical-align: top; +} + +.breadcrumbs, .breadcrumbs a { + color: #606060; +} + +.infoBox { + width: 110px; + padding-top: 15px; + padding-bottom: 15px; + text-align: center; +} + +.infoBox p { + margin: 0; +} + +.counter, .percent { + font-size: 120%; + font-weight: bold; + margin-bottom: 8px; +} + +#duration { + width: 125px; +} + +#successRate, .summaryGroup { + border: solid 2px #d0d0d0; + -moz-border-radius: 10px; + border-radius: 10px; +} + +#successRate { + width: 140px; + margin-left: 35px; +} + +#successRate .percent { + font-size: 180%; +} + +.success, .success a { + color: #008000; +} + +div.success, #successRate.success { + background-color: #bbd9bb; + border-color: #008000; +} + +.failures, .failures a { + color: #b60808; +} + +.skipped, .skipped a { + color: #c09853; +} + +div.failures, #successRate.failures { + background-color: #ecdada; + border-color: #b60808; +} + +ul.linkList { + padding-left: 0; +} + +ul.linkList li { + list-style: none; + margin-bottom: 5px; +} diff --git a/bootcamps-ejercicios/build/reports/tests/test/index.html b/bootcamps-ejercicios/build/reports/tests/test/index.html new file mode 100644 index 0000000..49f73b0 --- /dev/null +++ b/bootcamps-ejercicios/build/reports/tests/test/index.html @@ -0,0 +1,143 @@ + + + + + +Test results - Test Summary + + + + + +
+

Test Summary

+
+ + + + + +
+
+ + + + + + + +
+
+
3
+

tests

+
+
+
+
0
+

failures

+
+
+
+
0
+

ignored

+
+
+
+
0.045s
+

duration

+
+
+
+
+
+
100%
+

successful

+
+
+
+
+ +
+

Packages

+ + + + + + + + + + + + + + + + + + + + + +
PackageTestsFailuresIgnoredDurationSuccess rate
+com.oracle.arrays +3000.045s100%
+
+
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ClassTestsFailuresIgnoredDurationSuccess rate
+com.oracle.arrays.MultidimensionalTest +2000.043s100%
+com.oracle.arrays.UnidimensionalTest +1000.002s100%
+
+
+ +
+ + diff --git a/bootcamps-ejercicios/build/reports/tests/test/js/report.js b/bootcamps-ejercicios/build/reports/tests/test/js/report.js new file mode 100644 index 0000000..83bab4a --- /dev/null +++ b/bootcamps-ejercicios/build/reports/tests/test/js/report.js @@ -0,0 +1,194 @@ +(function (window, document) { + "use strict"; + + var tabs = {}; + + function changeElementClass(element, classValue) { + if (element.getAttribute("className")) { + element.setAttribute("className", classValue); + } else { + element.setAttribute("class", classValue); + } + } + + function getClassAttribute(element) { + if (element.getAttribute("className")) { + return element.getAttribute("className"); + } else { + return element.getAttribute("class"); + } + } + + function addClass(element, classValue) { + changeElementClass(element, getClassAttribute(element) + " " + classValue); + } + + function removeClass(element, classValue) { + changeElementClass(element, getClassAttribute(element).replace(classValue, "")); + } + + function initTabs() { + var container = document.getElementById("tabs"); + + tabs.tabs = findTabs(container); + tabs.titles = findTitles(tabs.tabs); + tabs.headers = findHeaders(container); + tabs.select = select; + tabs.deselectAll = deselectAll; + tabs.select(0); + + return true; + } + + function getCheckBox() { + return document.getElementById("line-wrapping-toggle"); + } + + function getLabelForCheckBox() { + return document.getElementById("label-for-line-wrapping-toggle"); + } + + function findCodeBlocks() { + var spans = document.getElementById("tabs").getElementsByTagName("span"); + var codeBlocks = []; + for (var i = 0; i < spans.length; ++i) { + if (spans[i].className.indexOf("code") >= 0) { + codeBlocks.push(spans[i]); + } + } + return codeBlocks; + } + + function forAllCodeBlocks(operation) { + var codeBlocks = findCodeBlocks(); + + for (var i = 0; i < codeBlocks.length; ++i) { + operation(codeBlocks[i], "wrapped"); + } + } + + function toggleLineWrapping() { + var checkBox = getCheckBox(); + + if (checkBox.checked) { + forAllCodeBlocks(addClass); + } else { + forAllCodeBlocks(removeClass); + } + } + + function initControls() { + if (findCodeBlocks().length > 0) { + var checkBox = getCheckBox(); + var label = getLabelForCheckBox(); + + checkBox.onclick = toggleLineWrapping; + checkBox.checked = false; + + removeClass(label, "hidden"); + } + } + + function switchTab() { + var id = this.id.substr(1); + + for (var i = 0; i < tabs.tabs.length; i++) { + if (tabs.tabs[i].id === id) { + tabs.select(i); + break; + } + } + + return false; + } + + function select(i) { + this.deselectAll(); + + changeElementClass(this.tabs[i], "tab selected"); + changeElementClass(this.headers[i], "selected"); + + while (this.headers[i].firstChild) { + this.headers[i].removeChild(this.headers[i].firstChild); + } + + var h2 = document.createElement("H2"); + + h2.appendChild(document.createTextNode(this.titles[i])); + this.headers[i].appendChild(h2); + } + + function deselectAll() { + for (var i = 0; i < this.tabs.length; i++) { + changeElementClass(this.tabs[i], "tab deselected"); + changeElementClass(this.headers[i], "deselected"); + + while (this.headers[i].firstChild) { + this.headers[i].removeChild(this.headers[i].firstChild); + } + + var a = document.createElement("A"); + + a.setAttribute("id", "ltab" + i); + a.setAttribute("href", "#tab" + i); + a.onclick = switchTab; + a.appendChild(document.createTextNode(this.titles[i])); + + this.headers[i].appendChild(a); + } + } + + function findTabs(container) { + return findChildElements(container, "DIV", "tab"); + } + + function findHeaders(container) { + var owner = findChildElements(container, "UL", "tabLinks"); + return findChildElements(owner[0], "LI", null); + } + + function findTitles(tabs) { + var titles = []; + + for (var i = 0; i < tabs.length; i++) { + var tab = tabs[i]; + var header = findChildElements(tab, "H2", null)[0]; + + header.parentNode.removeChild(header); + + if (header.innerText) { + titles.push(header.innerText); + } else { + titles.push(header.textContent); + } + } + + return titles; + } + + function findChildElements(container, name, targetClass) { + var elements = []; + var children = container.childNodes; + + for (var i = 0; i < children.length; i++) { + var child = children.item(i); + + if (child.nodeType === 1 && child.nodeName === name) { + if (targetClass && child.className.indexOf(targetClass) < 0) { + continue; + } + + elements.push(child); + } + } + + return elements; + } + + // Entry point. + + window.onload = function() { + initTabs(); + initControls(); + }; +} (window, window.document)); \ No newline at end of file diff --git a/bootcamps-ejercicios/build/reports/tests/test/packages/com.oracle.arrays.html b/bootcamps-ejercicios/build/reports/tests/test/packages/com.oracle.arrays.html new file mode 100644 index 0000000..0a49a80 --- /dev/null +++ b/bootcamps-ejercicios/build/reports/tests/test/packages/com.oracle.arrays.html @@ -0,0 +1,113 @@ + + + + + +Test results - Package com.oracle.arrays + + + + + +
+

Package com.oracle.arrays

+ +
+ + + + + +
+
+ + + + + + + +
+
+
3
+

tests

+
+
+
+
0
+

failures

+
+
+
+
0
+

ignored

+
+
+
+
0.045s
+

duration

+
+
+
+
+
+
100%
+

successful

+
+
+
+
+ +
+

Classes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
ClassTestsFailuresIgnoredDurationSuccess rate
+MultidimensionalTest +2000.043s100%
+UnidimensionalTest +1000.002s100%
+
+
+ +
+ + diff --git a/bootcamps-ejercicios/build/test-results/test/TEST-com.oracle.arrays.MultidimensionalTest.xml b/bootcamps-ejercicios/build/test-results/test/TEST-com.oracle.arrays.MultidimensionalTest.xml new file mode 100644 index 0000000..8e07316 --- /dev/null +++ b/bootcamps-ejercicios/build/test-results/test/TEST-com.oracle.arrays.MultidimensionalTest.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/bootcamps-ejercicios/build/test-results/test/TEST-com.oracle.arrays.UnidimensionalTest.xml b/bootcamps-ejercicios/build/test-results/test/TEST-com.oracle.arrays.UnidimensionalTest.xml new file mode 100644 index 0000000..29013d6 --- /dev/null +++ b/bootcamps-ejercicios/build/test-results/test/TEST-com.oracle.arrays.UnidimensionalTest.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/bootcamps-ejercicios/build/test-results/test/binary/output.bin b/bootcamps-ejercicios/build/test-results/test/binary/output.bin new file mode 100644 index 0000000..e69de29 diff --git a/bootcamps-ejercicios/build/test-results/test/binary/output.bin.idx b/bootcamps-ejercicios/build/test-results/test/binary/output.bin.idx new file mode 100644 index 0000000..f76dd23 Binary files /dev/null and b/bootcamps-ejercicios/build/test-results/test/binary/output.bin.idx differ diff --git a/bootcamps-ejercicios/build/test-results/test/binary/results.bin b/bootcamps-ejercicios/build/test-results/test/binary/results.bin new file mode 100644 index 0000000..7a93f99 Binary files /dev/null and b/bootcamps-ejercicios/build/test-results/test/binary/results.bin differ diff --git a/bootcamps-ejercicios/build/tmp/compileJava/previous-compilation-data.bin b/bootcamps-ejercicios/build/tmp/compileJava/previous-compilation-data.bin new file mode 100644 index 0000000..d3fac8d Binary files /dev/null and b/bootcamps-ejercicios/build/tmp/compileJava/previous-compilation-data.bin differ diff --git a/bootcamps-ejercicios/build/tmp/compileTestJava/previous-compilation-data.bin b/bootcamps-ejercicios/build/tmp/compileTestJava/previous-compilation-data.bin new file mode 100644 index 0000000..b8d88d3 Binary files /dev/null and b/bootcamps-ejercicios/build/tmp/compileTestJava/previous-compilation-data.bin differ diff --git a/bootcamps-ejercicios/gradle/wrapper/gradle-wrapper.jar b/bootcamps-ejercicios/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..7454180 Binary files /dev/null and b/bootcamps-ejercicios/gradle/wrapper/gradle-wrapper.jar differ diff --git a/bootcamps-ejercicios/gradle/wrapper/gradle-wrapper.properties b/bootcamps-ejercicios/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..05679dc --- /dev/null +++ b/bootcamps-ejercicios/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/bootcamps-ejercicios/gradlew b/bootcamps-ejercicios/gradlew new file mode 100644 index 0000000..744e882 --- /dev/null +++ b/bootcamps-ejercicios/gradlew @@ -0,0 +1,185 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MSYS* | MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=`expr $i + 1` + done + case $i in + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=`save "$@"` + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +exec "$JAVACMD" "$@" diff --git a/bootcamps-ejercicios/gradlew.bat b/bootcamps-ejercicios/gradlew.bat new file mode 100644 index 0000000..107acd3 --- /dev/null +++ b/bootcamps-ejercicios/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/bootcamps-ejercicios/settings.gradle b/bootcamps-ejercicios/settings.gradle new file mode 100644 index 0000000..f9d5149 --- /dev/null +++ b/bootcamps-ejercicios/settings.gradle @@ -0,0 +1,2 @@ +rootProject.name = 'bootcamps-ejercicios' + diff --git a/bootcamps-ejercicios/src/main/java/com/oracle/arrays/DynamicArrayList.java b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/DynamicArrayList.java new file mode 100644 index 0000000..4b93df6 --- /dev/null +++ b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/DynamicArrayList.java @@ -0,0 +1,14 @@ +package com.oracle.arrays; + +/** + * + * @author Adolfo Carrillo + */ + +public interface DynamicArrayList { + int size = 0; + void insert(int element); + void remove(int index); + void get(int index); + void resize(); +} diff --git a/bootcamps-ejercicios/src/main/java/com/oracle/arrays/Multidimensional.java b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/Multidimensional.java new file mode 100644 index 0000000..b19b046 --- /dev/null +++ b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/Multidimensional.java @@ -0,0 +1,8 @@ +package com.oracle.arrays; + +import com.oracle.arrays.model.Posicion; + +public interface Multidimensional { + Posicion getPosition(String[][] datos, String dato); + String getData(String[][] datos, Posicion posicion); +} diff --git a/bootcamps-ejercicios/src/main/java/com/oracle/arrays/Unidimensional.java b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/Unidimensional.java new file mode 100644 index 0000000..9a2e328 --- /dev/null +++ b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/Unidimensional.java @@ -0,0 +1,6 @@ +package com.oracle.arrays; + +public interface Unidimensional { + void ordenamiento(int[] arr); + int[] ordenamientoReversa(int[] arr); +} diff --git a/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/DinamicArrayListImpl.java b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/DinamicArrayListImpl.java new file mode 100644 index 0000000..0008fb1 --- /dev/null +++ b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/DinamicArrayListImpl.java @@ -0,0 +1,53 @@ +package com.oracle.arrays.impl; + +import com.oracle.arrays.DynamicArrayList; + +/** + * + * @author Adolfo Carrillo + */ +public class DinamicArrayListImpl implements DynamicArrayList { + + private int arr[]; + + private int capacity; + private int current; + + public DinamicArrayListImpl() { + + arr = new int[1]; + capacity = 1; + current = 0; + } + + @Override + public void insert(int element) { + + if (current == capacity) { + resize(); + } + arr[current] = element; + current++; + } + + @Override + public void remove(int index) { + + } + + @Override + public void get(int index) { + + } + + @Override + public void resize() { + int temp[] = new int[2 * capacity]; + + for (int i = 0; i < capacity; i++) { + temp[i] = arr[i]; + } + capacity *= 2; + arr = temp; + } +} diff --git a/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/MultidimensionalImpl.java b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/MultidimensionalImpl.java new file mode 100644 index 0000000..6dfde46 --- /dev/null +++ b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/MultidimensionalImpl.java @@ -0,0 +1,26 @@ +package com.oracle.arrays.impl; + +import com.oracle.arrays.Multidimensional; +import com.oracle.arrays.model.Posicion; + +public class MultidimensionalImpl implements Multidimensional { + + @Override + public Posicion getPosition(String[][] datos, String dato) { + + for (int i = 0; i < datos.length; i++) { + for (int j = 0; j < datos[i].length; j++) { + if (datos[i][j].equals(dato)) { + return new Posicion(i, j); + } + } + } + return null; + } + + @Override + public String getData(String[][] datos, Posicion posicion) { + + return datos[posicion.getX()][posicion.getY()]; + } +} diff --git a/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/UnidimensionalImpl.java b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/UnidimensionalImpl.java new file mode 100644 index 0000000..b14abf5 --- /dev/null +++ b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/impl/UnidimensionalImpl.java @@ -0,0 +1,64 @@ +package com.oracle.arrays.impl; + +import com.oracle.arrays.Unidimensional; + +public class UnidimensionalImpl implements Unidimensional { + + @Override + public void ordenamiento(int[] arr) { + + quickSort(arr, 0, arr.length - 1, true); + + } + + @Override + public int[] ordenamientoReversa(int[] arr) { + + int cpyArr[] = new int[arr.length]; + for (int i = 0; i < arr.length; i++) { + cpyArr[i] = arr[i]; + } + + quickSort(cpyArr, 0, cpyArr.length - 1, false); + return cpyArr; + + } + + static void swap(int[] arr, int i, int j) { + int temp = arr[i]; + arr[i] = arr[j]; + arr[j] = temp; + } + + static int partition(int[] arr, int low, int high, boolean direction)//true ascendent, false descendent + { + int pivot = arr[high]; + int i = (low - 1); + + for (int j = low; j <= high - 1; j++) { + if (direction == true) { + if (arr[j] < pivot) { + i++; + swap(arr, i, j); + } + } else if (direction == false) { + if (arr[j] > pivot) { + i++; + swap(arr, i, j); + } + } + } + swap(arr, i + 1, high); + return (i + 1); + } + + static void quickSort(int[] arr, int low, int high, boolean direction) { + if (low < high) { + + int pi = partition(arr, low, high, direction); + + quickSort(arr, low, pi - 1, direction); + quickSort(arr, pi + 1, high, direction); + } + } +} diff --git a/bootcamps-ejercicios/src/main/java/com/oracle/arrays/model/Posicion.java b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/model/Posicion.java new file mode 100644 index 0000000..a466031 --- /dev/null +++ b/bootcamps-ejercicios/src/main/java/com/oracle/arrays/model/Posicion.java @@ -0,0 +1,27 @@ +package com.oracle.arrays.model; + +public class Posicion { + private int x; + private int y; + + public Posicion(int x, int y) { + this.x = x; + this.y = y; + } + + public int getX() { + return x; + } + + public void setX(int x) { + this.x = x; + } + + public int getY() { + return y; + } + + public void setY(int y) { + this.y = y; + } +} diff --git a/bootcamps-ejercicios/src/test/java/com/oracle/arrays/MultidimensionalTest.java b/bootcamps-ejercicios/src/test/java/com/oracle/arrays/MultidimensionalTest.java new file mode 100644 index 0000000..7522e45 --- /dev/null +++ b/bootcamps-ejercicios/src/test/java/com/oracle/arrays/MultidimensionalTest.java @@ -0,0 +1,40 @@ +package com.oracle.arrays; + +import com.oracle.arrays.impl.MultidimensionalImpl; +import com.oracle.arrays.model.Posicion; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNull; + +public class MultidimensionalTest { + Multidimensional multidimensional; + @BeforeEach + public void setup() { + multidimensional = new MultidimensionalImpl(); + } + @Test + public void getPositionTest() { + String[][] datos = {{"hola", "bootcamp", "java"}, {"este", "array", "multidimensional"}}; + + Posicion pos = multidimensional.getPosition(datos, "multidimensional"); + assertEquals(pos.getX(), 1); + assertEquals(pos.getY(), 2); + + pos = multidimensional.getPosition(datos, "test"); + assertNull(pos); + + datos = new String[][]{{}, {}}; + pos = multidimensional.getPosition(datos, "multidimensional"); + assertNull(pos); + } + + @Test + public void getDataTest() { + String[][] datos = {{"ahora", "este", "es", "otro"}, {"pero", "irregular"}, {"java", "chido"}}; + Posicion pos = new Posicion(2, 0); + String dato = multidimensional.getData(datos, pos); + assertEquals(dato, "java"); + } +} diff --git a/bootcamps-ejercicios/src/test/java/com/oracle/arrays/UnidimensionalTest.java b/bootcamps-ejercicios/src/test/java/com/oracle/arrays/UnidimensionalTest.java new file mode 100644 index 0000000..8734cbd --- /dev/null +++ b/bootcamps-ejercicios/src/test/java/com/oracle/arrays/UnidimensionalTest.java @@ -0,0 +1,25 @@ +package com.oracle.arrays; + +import com.oracle.arrays.Unidimensional; +import com.oracle.arrays.impl.UnidimensionalImpl; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class UnidimensionalTest { + @Test + public void ordenamientoTest() { + int[] arr = {5,2,8,9}; + + Unidimensional uni = new UnidimensionalImpl(); + //Ascendente + uni.ordenamiento(arr); + assertEquals(2, arr[0]); + assertEquals(9, arr[arr.length - 1]); + + //Descendente + arr = uni.ordenamientoReversa(arr); + assertEquals(9, arr[0]); + assertEquals(2, arr[arr.length - 1]); + } +} diff --git a/src/main/java/com/oracle/arrays/impl/DinamicArrayListImpl.java b/src/main/java/com/oracle/arrays/impl/DinamicArrayListImpl.java new file mode 100644 index 0000000..1dd6754 --- /dev/null +++ b/src/main/java/com/oracle/arrays/impl/DinamicArrayListImpl.java @@ -0,0 +1,72 @@ +package com.oracle.arrays.impl; + +import com.oracle.arrays.DynamicArrayList; + +/** + * + * @author Adolfo Carrillo + */ +public class DinamicArrayListImpl implements DynamicArrayList { + + private int arr[]; + + private int capacity; + private int current; + + public DinamicArrayListImpl() { + + arr = new int[1]; + capacity = 1; + current = 0; + } + + @Override + public void insert(int element) { + + if (current == capacity) { + resize(); + } + arr[current] = element; + current++; + } + + @Override + public void remove(int index) { + if (arr == null || index < 0 || index > arr.length) { + System.out.println("Invalid array or index."); + } else { + if (index == arr.length) { + temp = new int[arr.length - 1]; + } else { + arr[index] = arr[arr.length - 1]; + temp = new int[arr.length - 1]; + } + for (int i = 0; i < arr.length-1; i++) { + temp[i] = arr[i]; + } + arr = temp; + current--; + } + } + + @Override + public void get(int index) { + if (arr == null || index < 0 || index >= arr.length) { + System.out.println("Index out of bound"); + + }else { + System.out.printf("Element in index %d is: %d",index,arr[index]); + } + } + + @Override + public void resize() { + capacity = arr.length + 2; + temp = new int[capacity]; + + for (int i = 0; i < arr.length; i++) { + temp[i] = arr[i]; + } + arr = temp; + } +} diff --git a/src/main/java/com/oracle/arrays/impl/MultidimensionalImpl.java b/src/main/java/com/oracle/arrays/impl/MultidimensionalImpl.java index 6d304ab..71577b0 100644 --- a/src/main/java/com/oracle/arrays/impl/MultidimensionalImpl.java +++ b/src/main/java/com/oracle/arrays/impl/MultidimensionalImpl.java @@ -4,13 +4,25 @@ import com.oracle.arrays.model.Posicion; public class MultidimensionalImpl implements Multidimensional { - @Override + Posicion position; + + @Override public Posicion getPosition(String[][] datos, String dato) { + + for (int i = 0; i < datos.length; i++) { + for (int j = 0; j < datos[i].length; j++) { + if (datos[i][j].equals(dato)) { + return new Posicion(i, j); + } + } + } return null; } @Override public String getData(String[][] datos, Posicion posicion) { - return null; + + return datos[posicion.getX()][posicion.getY()]; } + } diff --git a/src/main/java/com/oracle/arrays/impl/UnidimensionalImpl.java b/src/main/java/com/oracle/arrays/impl/UnidimensionalImpl.java index 927206e..a5bc7f1 100644 --- a/src/main/java/com/oracle/arrays/impl/UnidimensionalImpl.java +++ b/src/main/java/com/oracle/arrays/impl/UnidimensionalImpl.java @@ -5,10 +5,59 @@ public class UnidimensionalImpl implements Unidimensional { @Override public void ordenamiento(int[] arr) { + + quickSort(arr, 0, arr.length - 1, true); + } @Override public int[] ordenamientoReversa(int[] arr) { - return null; + + int cpyArr[] = new int[arr.length]; + for (int i = 0; i < arr.length; i++) { + cpyArr[i] = arr[i]; + } + + quickSort(cpyArr, 0, cpyArr.length - 1, false); + return cpyArr; + + } + + static void swap(int[] arr, int i, int j) { + int temp = arr[i]; + arr[i] = arr[j]; + arr[j] = temp; + } + + static int partition(int[] arr, int low, int high, boolean direction)//true ascendent, false descendent + { + int pivot = arr[high]; + int i = (low - 1); + + for (int j = low; j <= high - 1; j++) { + if (direction == true) { + if (arr[j] < pivot) { + i++; + swap(arr, i, j); + } + } else if (direction == false) { + if (arr[j] > pivot) { + i++; + swap(arr, i, j); + } + } + } + swap(arr, i + 1, high); + return (i + 1); + } + + static void quickSort(int[] arr, int low, int high, boolean direction) { + if (low < high) { + + int pi = partition(arr, low, high, direction); + + quickSort(arr, low, pi - 1, direction); + quickSort(arr, pi + 1, high, direction); + } } }