From 011fbf12ff9a0ad335f0fa6771930447d45242ce Mon Sep 17 00:00:00 2001 From: xam4lor Date: Wed, 27 Jun 2018 20:25:19 +0200 Subject: [PATCH 1/9] Add the java version of the bubble algorithm --- .../sorting_searching/bubble/code/java/bubble.java | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 chapters/sorting_searching/bubble/code/java/bubble.java diff --git a/chapters/sorting_searching/bubble/code/java/bubble.java b/chapters/sorting_searching/bubble/code/java/bubble.java new file mode 100644 index 000000000..17006d297 --- /dev/null +++ b/chapters/sorting_searching/bubble/code/java/bubble.java @@ -0,0 +1,11 @@ +static void bubbleSort(int[] arr) { + for (int r = arr.length - 1; r > 0; r--) { + for (int i = 0; i < r; i++) { + if(arr[i] > arr[i + 1]) { + int tmp = arr[i]; + arr[i] = arr[i + 1]; + arr[i + 1] = tmp; + } + } + } +} From 3e5fdff4d70f948397a7ae763c9b069c574d9965 Mon Sep 17 00:00:00 2001 From: xam4lor Date: Wed, 27 Jun 2018 20:41:34 +0200 Subject: [PATCH 2/9] Added contribution and modified markdown file --- CONTRIBUTORS.md | 1 + chapters/sorting_searching/bubble/bubble_sort.md | 2 ++ 2 files changed, 3 insertions(+) diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index a1ad4161d..7d1781230 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -5,3 +5,4 @@ Gathros Jeremie Gillet (- Jie -) Salim Khatib Hitesh C +Maxime Dherbécourt diff --git a/chapters/sorting_searching/bubble/bubble_sort.md b/chapters/sorting_searching/bubble/bubble_sort.md index 25f7cc261..8e5f367e6 100644 --- a/chapters/sorting_searching/bubble/bubble_sort.md +++ b/chapters/sorting_searching/bubble/bubble_sort.md @@ -14,6 +14,8 @@ This means that we need to go through the vector $$\mathcal{O}(n^2)$$ times with [import:9-27, lang:"csharp"](code/cs/BubbleSort.cs) {% sample lang="c" %} [import:3-21, lang:"c_cpp"](code/c/bubble_sort.c) +{% sample lang="ja" %} +[import:1-11, lang:"java"](code/java/bubble.java) {% sample lang="js" %} [import:1-11, lang:"javascript"](code/js/bubble.js) {% sample lang="hs" %} From 883be3bff6b56b1ef6f9ff838ecfb3cc96603202 Mon Sep 17 00:00:00 2001 From: xam4lor Date: Wed, 27 Jun 2018 20:43:51 +0200 Subject: [PATCH 3/9] Update bubble_sort.md --- chapters/sorting_searching/bubble/bubble_sort.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapters/sorting_searching/bubble/bubble_sort.md b/chapters/sorting_searching/bubble/bubble_sort.md index 8e5f367e6..9f278e1b1 100644 --- a/chapters/sorting_searching/bubble/bubble_sort.md +++ b/chapters/sorting_searching/bubble/bubble_sort.md @@ -14,7 +14,7 @@ This means that we need to go through the vector $$\mathcal{O}(n^2)$$ times with [import:9-27, lang:"csharp"](code/cs/BubbleSort.cs) {% sample lang="c" %} [import:3-21, lang:"c_cpp"](code/c/bubble_sort.c) -{% sample lang="ja" %} +{% sample lang="java" %} [import:1-11, lang:"java"](code/java/bubble.java) {% sample lang="js" %} [import:1-11, lang:"javascript"](code/js/bubble.js) From 3113eb4368922e3013391bf518eced252606f140 Mon Sep 17 00:00:00 2001 From: xam4lor Date: Wed, 27 Jun 2018 21:21:39 +0200 Subject: [PATCH 4/9] Added some example code --- .../bubble/code/java/bubble.java | 37 ++++++++++++++----- 1 file changed, 28 insertions(+), 9 deletions(-) diff --git a/chapters/sorting_searching/bubble/code/java/bubble.java b/chapters/sorting_searching/bubble/code/java/bubble.java index 17006d297..c8dd066d6 100644 --- a/chapters/sorting_searching/bubble/code/java/bubble.java +++ b/chapters/sorting_searching/bubble/code/java/bubble.java @@ -1,11 +1,30 @@ static void bubbleSort(int[] arr) { - for (int r = arr.length - 1; r > 0; r--) { - for (int i = 0; i < r; i++) { - if(arr[i] > arr[i + 1]) { - int tmp = arr[i]; - arr[i] = arr[i + 1]; - arr[i + 1] = tmp; - } - } - } + for (int r = arr.length - 1; r > 0; r--) { + for (int i = 0; i < r; i++) { + if(arr[i] > arr[i + 1]) { + int tmp = arr[i]; + arr[i] = arr[i + 1]; + arr[i + 1] = tmp; + } + } + } +} + + +public static void main(String[] args) { + int[] test = new int[]{20, -3, 50, 1, -6, 59}; + + System.out.println("Unsorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } + + + bubbleSort(test); + + + System.out.println("\n\nSorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } } From 00ae3c329be0c852abdd57ae060fdd13985cb30e Mon Sep 17 00:00:00 2001 From: xam4lor Date: Wed, 27 Jun 2018 21:39:19 +0200 Subject: [PATCH 5/9] Added Bogo example and wrapped class for Bubble ex --- chapters/sorting_searching/bogo/bogo_sort.md | 3 +- .../bogo/code/java/bogo.java | 47 +++++++++++++++++++ .../sorting_searching/bubble/bubble_sort.md | 3 +- .../bubble/code/java/bubble.java | 41 ++++++++-------- 4 files changed, 71 insertions(+), 23 deletions(-) create mode 100644 chapters/sorting_searching/bogo/code/java/bogo.java diff --git a/chapters/sorting_searching/bogo/bogo_sort.md b/chapters/sorting_searching/bogo/bogo_sort.md index 3a643ecef..406ed3b0e 100644 --- a/chapters/sorting_searching/bogo/bogo_sort.md +++ b/chapters/sorting_searching/bogo/bogo_sort.md @@ -21,6 +21,8 @@ In code, it looks something like this: [import:2-10, lang:"clojure"](code/clojure/bogo.clj) {% sample lang="c" %} [import:4-27, lang:"c_cpp"](code/c/bogo_sort.c) +{% sample lang="java" %} +[import:2-17, lang:"java"](code/java/bogo.java) {% sample lang="js" %} [import:1-16, lang:"javascript"](code/js/bogo.js) {% sample lang="hs" %} @@ -56,4 +58,3 @@ $$ \newcommand{\bfomega}{\boldsymbol{\omega}} \newcommand{\bftau}{\boldsymbol{\tau}} $$ - diff --git a/chapters/sorting_searching/bogo/code/java/bogo.java b/chapters/sorting_searching/bogo/code/java/bogo.java new file mode 100644 index 000000000..770cfee40 --- /dev/null +++ b/chapters/sorting_searching/bogo/code/java/bogo.java @@ -0,0 +1,47 @@ +public class Bogo { + // The shuffle() function can be found in code/java/bogo.java + static void bogoSort(int[] arr) { + while(!isSorted(arr)) { + shuffle(arr); + } + } + + static boolean isSorted(int[] arr) { + for (int i = 0; i < arr.length - 1; i++) { + if(arr[i] > arr[i + 1]) { + return false; + } + } + + return true; + } + + static void shuffle(int[] arr) { + for (int r = arr.length - 1; r > 0; r--) { + int i = (int) Math.floor(Math.random() * r); + int tmp = arr[i]; + arr[i] = arr[r]; + arr[r] = tmp; + } + } + + + // main function (for testing) + public static void main(String[] args) { + int[] test = new int[]{20, -3, 50, 1, -6, 59}; + + System.out.println("Unsorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } + + + bogoSort(test); + + + System.out.println("\n\nSorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } + } +} diff --git a/chapters/sorting_searching/bubble/bubble_sort.md b/chapters/sorting_searching/bubble/bubble_sort.md index 9f278e1b1..c1652d42d 100644 --- a/chapters/sorting_searching/bubble/bubble_sort.md +++ b/chapters/sorting_searching/bubble/bubble_sort.md @@ -15,7 +15,7 @@ This means that we need to go through the vector $$\mathcal{O}(n^2)$$ times with {% sample lang="c" %} [import:3-21, lang:"c_cpp"](code/c/bubble_sort.c) {% sample lang="java" %} -[import:1-11, lang:"java"](code/java/bubble.java) +[import:2-12, lang:"java"](code/java/bubble.java) {% sample lang="js" %} [import:1-11, lang:"javascript"](code/js/bubble.js) {% sample lang="hs" %} @@ -52,4 +52,3 @@ $$ \newcommand{\bfomega}{\boldsymbol{\omega}} \newcommand{\bftau}{\boldsymbol{\tau}} $$ - diff --git a/chapters/sorting_searching/bubble/code/java/bubble.java b/chapters/sorting_searching/bubble/code/java/bubble.java index c8dd066d6..da1425fd3 100644 --- a/chapters/sorting_searching/bubble/code/java/bubble.java +++ b/chapters/sorting_searching/bubble/code/java/bubble.java @@ -1,30 +1,31 @@ -static void bubbleSort(int[] arr) { - for (int r = arr.length - 1; r > 0; r--) { - for (int i = 0; i < r; i++) { - if(arr[i] > arr[i + 1]) { - int tmp = arr[i]; - arr[i] = arr[i + 1]; - arr[i + 1] = tmp; +public class Bubble { + static void bubbleSort(int[] arr) { + for (int r = arr.length - 1; r > 0; r--) { + for (int i = 0; i < r; i++) { + if(arr[i] > arr[i + 1]) { + int tmp = arr[i]; + arr[i] = arr[i + 1]; + arr[i + 1] = tmp; + } } } } -} - - -public static void main(String[] args) { - int[] test = new int[]{20, -3, 50, 1, -6, 59}; - System.out.println("Unsorted array :"); - for (int i = 0; i < test.length; i++) { - System.out.print(test[i] + " "); - } + // main function (for testing) + public static void main(String[] args) { + int[] test = new int[]{20, -3, 50, 1, -6, 59}; - bubbleSort(test); + System.out.println("Unsorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } + bubbleSort(test); - System.out.println("\n\nSorted array :"); - for (int i = 0; i < test.length; i++) { - System.out.print(test[i] + " "); + System.out.println("\n\nSorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } } } From e1f6d43ff825e0fb7ab1875f1f1366c9ab69b3d7 Mon Sep 17 00:00:00 2001 From: xam4lor Date: Thu, 28 Jun 2018 00:04:33 +0200 Subject: [PATCH 6/9] Update bogo.java Added an empty println() at the end and put spaces instead of tabs. --- .../bogo/code/java/bogo.java | 91 ++++++++++--------- 1 file changed, 46 insertions(+), 45 deletions(-) diff --git a/chapters/sorting_searching/bogo/code/java/bogo.java b/chapters/sorting_searching/bogo/code/java/bogo.java index 770cfee40..1689e0e12 100644 --- a/chapters/sorting_searching/bogo/code/java/bogo.java +++ b/chapters/sorting_searching/bogo/code/java/bogo.java @@ -1,47 +1,48 @@ public class Bogo { - // The shuffle() function can be found in code/java/bogo.java - static void bogoSort(int[] arr) { - while(!isSorted(arr)) { - shuffle(arr); - } - } - - static boolean isSorted(int[] arr) { - for (int i = 0; i < arr.length - 1; i++) { - if(arr[i] > arr[i + 1]) { - return false; - } - } - - return true; - } - - static void shuffle(int[] arr) { - for (int r = arr.length - 1; r > 0; r--) { - int i = (int) Math.floor(Math.random() * r); - int tmp = arr[i]; - arr[i] = arr[r]; - arr[r] = tmp; - } - } - - - // main function (for testing) - public static void main(String[] args) { - int[] test = new int[]{20, -3, 50, 1, -6, 59}; - - System.out.println("Unsorted array :"); - for (int i = 0; i < test.length; i++) { - System.out.print(test[i] + " "); - } - - - bogoSort(test); - - - System.out.println("\n\nSorted array :"); - for (int i = 0; i < test.length; i++) { - System.out.print(test[i] + " "); - } - } + // The shuffle() function can be found in code/java/bogo.java + static void bogoSort(int[] arr) { + while(!isSorted(arr)) { + shuffle(arr); + } + } + + static boolean isSorted(int[] arr) { + for (int i = 0; i < arr.length - 1; i++) { + if(arr[i] > arr[i + 1]) { + return false; + } + } + + return true; + } + + static void shuffle(int[] arr) { + for (int r = arr.length - 1; r > 0; r--) { + int i = (int) Math.floor(Math.random() * r); + int tmp = arr[i]; + arr[i] = arr[r]; + arr[r] = tmp; + } + } + + + // main function (for testing) + public static void main(String[] args) { + int[] test = new int[]{20, -3, 50, 1, -6, 59}; + + System.out.println("Unsorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } + + + bogoSort(test); + + + System.out.println("\n\nSorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } + System.out.println("\n"); + } } From f58d81723fe61347ae0aec7fc9e589f6682bf698 Mon Sep 17 00:00:00 2001 From: xam4lor Date: Thu, 28 Jun 2018 10:53:54 +0200 Subject: [PATCH 7/9] Update bogo.java --- chapters/sorting_searching/bogo/code/java/bogo.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapters/sorting_searching/bogo/code/java/bogo.java b/chapters/sorting_searching/bogo/code/java/bogo.java index 1689e0e12..d44c3b422 100644 --- a/chapters/sorting_searching/bogo/code/java/bogo.java +++ b/chapters/sorting_searching/bogo/code/java/bogo.java @@ -43,6 +43,6 @@ public static void main(String[] args) { for (int i = 0; i < test.length; i++) { System.out.print(test[i] + " "); } - System.out.println("\n"); + System.out.println(""); } } From 4b965fd70e47cd3b06049de02dab3cdc59d16e4e Mon Sep 17 00:00:00 2001 From: xam4lor Date: Thu, 28 Jun 2018 10:56:05 +0200 Subject: [PATCH 8/9] Replace tabs with spaces --- .../bubble/code/java/bubble.java | 48 +++++++++---------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/chapters/sorting_searching/bubble/code/java/bubble.java b/chapters/sorting_searching/bubble/code/java/bubble.java index da1425fd3..a00824754 100644 --- a/chapters/sorting_searching/bubble/code/java/bubble.java +++ b/chapters/sorting_searching/bubble/code/java/bubble.java @@ -1,31 +1,31 @@ public class Bubble { - static void bubbleSort(int[] arr) { - for (int r = arr.length - 1; r > 0; r--) { - for (int i = 0; i < r; i++) { - if(arr[i] > arr[i + 1]) { - int tmp = arr[i]; - arr[i] = arr[i + 1]; - arr[i + 1] = tmp; - } - } - } - } + static void bubbleSort(int[] arr) { + for (int r = arr.length - 1; r > 0; r--) { + for (int i = 0; i < r; i++) { + if(arr[i] > arr[i + 1]) { + int tmp = arr[i]; + arr[i] = arr[i + 1]; + arr[i + 1] = tmp; + } + } + } + } - // main function (for testing) - public static void main(String[] args) { - int[] test = new int[]{20, -3, 50, 1, -6, 59}; + // main function (for testing) + public static void main(String[] args) { + int[] test = new int[]{20, -3, 50, 1, -6, 59}; - System.out.println("Unsorted array :"); - for (int i = 0; i < test.length; i++) { - System.out.print(test[i] + " "); - } + System.out.println("Unsorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } - bubbleSort(test); + bubbleSort(test); - System.out.println("\n\nSorted array :"); - for (int i = 0; i < test.length; i++) { - System.out.print(test[i] + " "); - } - } + System.out.println("\n\nSorted array :"); + for (int i = 0; i < test.length; i++) { + System.out.print(test[i] + " "); + } + } } From cf065a86e1766337cb71352d0b48334521904219 Mon Sep 17 00:00:00 2001 From: xam4lor Date: Thu, 28 Jun 2018 10:57:17 +0200 Subject: [PATCH 9/9] Added an empty sysout at the end --- chapters/sorting_searching/bubble/code/java/bubble.java | 1 + 1 file changed, 1 insertion(+) diff --git a/chapters/sorting_searching/bubble/code/java/bubble.java b/chapters/sorting_searching/bubble/code/java/bubble.java index a00824754..fa7dd9971 100644 --- a/chapters/sorting_searching/bubble/code/java/bubble.java +++ b/chapters/sorting_searching/bubble/code/java/bubble.java @@ -27,5 +27,6 @@ public static void main(String[] args) { for (int i = 0; i < test.length; i++) { System.out.print(test[i] + " "); } + System.out.println(""); } }