public class Main{ // bubble sort = pairs of adjacent elements are compared, and the elements // swapped if they are not in order. // Quadratic time O(n^2) // small data set = okay-ish // large data set = BAD (plz don't) public static void main(String[] args) { int array[] = {9, 1, 8, 2, 7, 3, 6, 4, 5}; bubbleSort(array); for(int i : array) { System.out.print(i); } } public static void bubbleSort(int array[]) { for(int i = 0; i < array.length - 1; i++) { for(int j = 0; j < array.length - i - 1; j++) { if(array[j] > array[j+1]) { int temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } } }
@andreamixvlog74782 жыл бұрын
Hello, can i get this code?
@joyceasante8292 Жыл бұрын
Practicing... Ascending order public class Main { public static void main(String[] args) { int array[] = {7,3,2,1,4,0,8,6,5}; bubbleSort(array); for(int i: array){ System.out.print(i); } } public static void bubbleSort(int array[]){ for(int i = 0; i < array.length - 1; i++){ for(int j = 0; j < array.length - i -1; j++){ if(array[j] > array[j + 1]){ int temp = array[j]; array[j] = array[j+1]; array[j+1]= temp; } } } } } ************************* Descending order public class Main { public static void main(String[] args) { int array[] = {7,3,2,1,4,0,8,6,5}; bubbleSort(array); for(int i: array){ System.out.print(i); } } public static void bubbleSort(int array[]){ for(int i = 0; i < array.length - 1; i++){ for(int j = 0; j < array.length - i -1; j++){ if(array[j] < array[j + 1]){ int temp = array[j]; array[j] = array[j+1]; array[j+1]= temp; } } } } }
@koinahotahai Жыл бұрын
@@andreamixvlog7478yeah you can get it
@soumyajitpaul613525 күн бұрын
Thank u bro you made my day 🗿(Even though I am posting this comment at night) You are one of the best computer teacher that anyone can get🗿
@dhoneybeekingdom7889 Жыл бұрын
The comparison with the two cups was really intuitive! I wish someone had explained me variable swapping with that example.
@김우솔-j3l3 жыл бұрын
You are saving my life in cs classes. Thank you so much.
@BroCodez3 жыл бұрын
sweet! I'm glad the videos are helping!
@T-Rex0711 Жыл бұрын
Defeat the algorithm, Bros.
@jaykay84265 ай бұрын
Out of all the basic ways of sorting, this is the slowest of the basic ways to sort
@bababhosdanand8 күн бұрын
Ya but the easiest to execute
@moum.a81303 жыл бұрын
Bro you are just amazing , i really appriciate your works .. Please keep going
@BroCodez3 жыл бұрын
thanks for watching!
@Krzysiekoy6 күн бұрын
I know I'm late but I have practicing this stuff and I feel there is one big flaw in this implementation. If the array is already partially sorted, or if it is already fully sorted, we are wasting time doing the unecessary loops over and over again. We should track the information whether or not any elements were swapped during the "main loop iteration". If we didn't need to swap any elements (i.e. they were already sorted) then we should just quit immediately. Here is to illustrate my point: function bubbleSort(nums: number[]) { let completedMainIterations = 0; let isArraySorted; do { isArraySorted = true; for (let i = 0; i < nums.length - 1 - completedMainIterations; i++) { if (nums[i] > nums[i + 1]) { isArraySorted = false; [nums[i], nums[i + 1]] = [nums[i + 1], nums[i]]; } } completedMainIterations++; } while (!isArraySorted); return nums; }
@siddhartharofficial836016 күн бұрын
These videos are insanely helpful at any level. The way that u help me visualize how the sort works at the start of the video is great. Thanks A bunch!!
@ashmikanln3110 Жыл бұрын
U r videos are my go to for all the sorting algos, Thank you for making these, Great help, Keep up the great work!
@poromoro24143 жыл бұрын
legit only channel I have notifications on for, lifesaver!
@BroCodez3 жыл бұрын
thanks Poromoro! I'm glad these videos are helping
@sann66883 күн бұрын
for(int i = 0; i < array.length - 1; i++) { ... } I guess the correct form is as follows: for(int i = 0; i < array.length; i++) { ... }
@sakuriosky1573 Жыл бұрын
For the second for-loop for(int j = 0; j < array.length - i - 1; j++) Why must we subtract i and one? I understand why we need to subtract one but why i?
@jellojoy297710 ай бұрын
I know it's kind of late, but I'll reply anyway in case someone has the same question. We subtract i, so that way we won't check the numbers that are already sorted!
@pupper55804 ай бұрын
we subtract 1 so there wont be overflow from the array. You can avoid using -1 by doing the following steps: 1) start the j-loop from 1. 2) when you do comparison, you do arr[j-1] and arr[j] comparisons. Using this version of the loop might be more intuitive to understand.
@codewithschoolteacher51182 ай бұрын
In Bubble Sort, we compare pairs of numbers in the list and swap them if they are in the wrong order. After one complete pass through the list, the biggest number will be at the end, so we don't need to check it again in the next pass. Now, let's focus on this part of the loop: j < array.length - i - 1 What is j? j is the position in the array we are currently checking (the current pair of numbers being compared). What is array.length? array.length is the total number of elements in the array. For example, if the array has 6 numbers, array.length is 6. Why do we subtract 1? We subtract 1 because when we compare the element at j, we also compare it with the element at j + 1. If j were at the very end of the array, trying to check j + 1 would cause an error, because there’s no number after the last one. So, we stop one position early, by subtracting 1. Why subtract i? Every time we finish one pass through the array (one loop of the outer for loop), the largest number gets "bubbled up" to its correct position at the end of the array. In the second pass (i = 1), the second-largest number will be in its correct position. In the third pass (i = 2), the third-largest number will be in place, and so on. So, each time, we don’t need to check as many numbers as before because some of them are already sorted at the end. Subtracting i makes the loop shorter each time, so we don't waste time checking numbers that are already in the right place. Example with 6 Numbers: Imagine we have this array: {5, 2, 9, 1, 5, 6} (6 numbers). First pass (i = 0): We check and compare all numbers from position j = 0 to j = 4 (because array.length - i - 1 = 6 - 0 - 1 = 5). Second pass (i = 1): The largest number (9) is already in place, so we don’t need to compare it again. Now, we compare from j = 0 to j = 3 (because array.length - i - 1 = 6 - 1 - 1 = 4). Third pass (i = 2): The two largest numbers (9 and 6) are in place, so we only need to compare from j = 0 to j = 2. Each time, i gets bigger, and we check fewer numbers because the largest numbers are already sorted at the end!
@wave80602 ай бұрын
@@codewithschoolteacher5118thanks a lot
@Zippo_12342 жыл бұрын
These videos are great. Really helpful for my studying, thank you
@GamingPro-xn4hy2 жыл бұрын
Bro is the best when it comes to explaining. I hope this guy blows up all over yt. I will support him
@leonardopensador9 ай бұрын
I'm watching your videos from Brazil and I want to thank you for taking the time to teach us. It was very didactic to understand your explanation. Thank you very much.
@DetCoAnimeFan3 жыл бұрын
I know it already but I appreciate your effort. I currently know bubble sort, selection sort, insertion sort, binary and linear search as per my school syllabus. I will be waiting for your quick sort tutorial, I seriously want to learn it.
@BroCodez3 жыл бұрын
quicksort will be coming up soon I believe
@barelycodingtoday Жыл бұрын
I still come back to this video from time to time to rehash my BubbleSort. Thanks BRO!
@Snowmanver22 жыл бұрын
Bubble sort is a very easy algorithm to implement, but is quite inefficient with large data sets
@hather99382 ай бұрын
a lot better than uni teachers, thank you
@aaronfernando5300 Жыл бұрын
Ey Brooooo ... i love you man ... not even my uni lecturer explained sorting this well .. saw this video 1 day prior to my exam and it helped meee soo much.. really appriciate BROOO ..Much Love from Sri Lanka ❤
@andres91087 ай бұрын
I'm from Colombia and I can understand all with this video, thx u (I love the manual example)
@aditya_asundi3 жыл бұрын
you are great, just 15k subs away from the milestone! congrats
@BroCodez3 жыл бұрын
Yeah that's coming up soon!
@ThEHUNtErCr98 ай бұрын
Really helpful video. I could not understand the concept of bubble sort before but now i do and it has helped me code my programs better thanks bro
@MohammadJavadd7 ай бұрын
Really can't be better than this, thanks so much it was great tutorial❤❤
@thainguyenviet32673 жыл бұрын
always waiting for your video !!! keep doing this , love u
@BroCodez3 жыл бұрын
Thanks! I will continue
@bagnotneeded2 жыл бұрын
you are a truly gigachad... really golden video. keep going!
@aliiiccyee5736 Жыл бұрын
I love u!!!! Thank u for making the concept so clear n understandable💝
@xeahmedrefat2972 Жыл бұрын
Thanks from Egypt❤🔥
@wolfskind91353 жыл бұрын
You're really saving my ass studying for that computer science exam - thanks bro!
@jerrypolemica2704 Жыл бұрын
Thanks from Italy!
@kyawsanaung20197 ай бұрын
Thank you for your video. I think you need to break the loop if the array is already sorted for efficiency.
@sabermmirza3 жыл бұрын
Everyone does not share information's easily and free, mostly want money, Thanks for sharing free INFORMATIONS BRO
@BroCodez3 жыл бұрын
no problem! Thanks for watching Saber
@aleacevedo1016 Жыл бұрын
As always... excellent videos! Thanks!
@joelpose7269 Жыл бұрын
i dont understand the "J" loop, why do you substract "i"? could someone explain pls
@BN-cr3el3 жыл бұрын
💯 thank you!
@dharmeshajudiya1709 Жыл бұрын
Good explantation, Thanks for sharing
@sahinyusifli9756 Жыл бұрын
Thank you. It was so helpful!!
@DanielSmith-uj7rr3 жыл бұрын
Thank You Bro! YOU ARE GREAT MY FRIEND! (People who dislikes are not from Computer Science background! LOL)! Well, I'm comfortable in Python programming. So, I didn't watch your Java code. But, your explanation is so perfect that it was building an easy understanding about the algorithm. So nicely explained! Bro, Do you also solve leet code problems?
@dankmemequeen9581 Жыл бұрын
Thank you very much bro, you put so much time and effort into your videos!
@StefanosFragoulis Жыл бұрын
Great Video mate!
@codeammar Жыл бұрын
thx man for the amazing video , I wanted to note that since the inner loop has 8 elements to be compared and the last element won't get compared because the second element then will already be sorted, so for that the outerloop should be array.length - 2 right ?
@OweYaOne29 күн бұрын
Thanks again, bro :)
@junialdy Жыл бұрын
thank you for the video, very easy to understand with your explanation
@mohamedabdirizakahmed3539 Жыл бұрын
thank you so much, it makes me easy, cause I watched alot of tutorials but don't understand. yesterday I bought a C# course on udemy, the first video is talking how to make a Bubble sort, but i don't understand. then my mind said: go on yotube, may be you can find a good teacher that makes simply to this fucking Bubble sort. then i got you. Now i understand the Bubble sort. thank you so much..
@AiGeneration-t2e2 жыл бұрын
Great explanation, thank you so much.
@plankalkulcompiler9468 Жыл бұрын
Very helpful video, thank you!
@Dumb4Creepy Жыл бұрын
can someone help me... why is it that we use " i < array.length - 1 " coz "
@qwikz53893 жыл бұрын
this helped me out thank you
@BroCodez3 жыл бұрын
Thanks for watching Qwikz!
@johnhansen47943 жыл бұрын
Clear and Concise. Thanks.
@BroCodez3 жыл бұрын
Thanks for watching John!
@autosuggestionasshole92083 жыл бұрын
the best channel on youtubeeee
@BroCodez3 жыл бұрын
Thanks bro!
@jdserrato3792 Жыл бұрын
I will savour this moment that does not involve recursion
@geografixxxx Жыл бұрын
Very easy to understand, but I wish u made those tutorial in C.
@BruceNguyen19994 ай бұрын
Thank bro code you is my hero about progamming thanks bro
@envektro25193 жыл бұрын
can you do this for every sorting algorithm? thanks in advance
@BroCodez3 жыл бұрын
I'll try
@aleksandarduncevic9548 Жыл бұрын
Great videos, you are very helpfull! One question, in second for loop, can we write "int j = i" instead of 0, because we do not want to compare elements that are already sorted?
@poparobertandrei1698 Жыл бұрын
he already does that but its not the first i elements that are sorted its the last i
@Tomteluva828 ай бұрын
very useful, thanks!
@abdulmoiz53113 жыл бұрын
Great video! Please explain QuickSort , Heap and Binary Trees!!
@BroCodez3 жыл бұрын
Thanks Abdul! We'll get to those topics eventually!
@learner8005 Жыл бұрын
New bro here loved you video brooooo🤘🤘🤘
@bluebaboon15 ай бұрын
all I keep hearing is bulbasaur 😆Thanks for the video!!
@MohitRaj-17123 жыл бұрын
you deserve more subscribers.
@BroCodez3 жыл бұрын
thanks Mohit!
@sadman685210 ай бұрын
Thank you bro!
@preet60952 жыл бұрын
Explanation of j< array.length-i-1 ? please...
@morhakak19072 жыл бұрын
After the first iteration the highest number will ended up in the highest position. so, in the next iteration we don't need to check again for that number (he's at the right position). After the second iteration the second highest number will ended up in the second highest position, so we don't need to check again for that number or the number in the highest position. And so on for the rest of the iterations.
@gabrielcasanova70342 жыл бұрын
Hey! bro or guys, why are u using a nested loop? still didnt get it
@lambdadotjoburg8 ай бұрын
I am happy to announce that I will be building a complementary video series (Algorithmic Complexity Analysis) that analyzes many of the defined concepts within your talks to demonstrate it using a rigorous mathematical framework that describes algorithms on a meta-level and forms the perfect combination, when watched in conjunction with your video series
@anthonychiara680911 ай бұрын
why is it j
@alinaseerideas22953 жыл бұрын
Great job.. Please Start complete video series on node KS as back-end technology..
@BroCodez3 жыл бұрын
maybe! I'll let you guys vote on future topics when I release polls
@muhammed__5 Жыл бұрын
very well done!
@MeditateRelaxEtcetera9 ай бұрын
You've got it sorted out.😎
@sakiszintros778210 ай бұрын
hi.can you start from the end of the table to compare the elements or is it wrong?(Python)
@jacklagos936 Жыл бұрын
Many thanks!
@nikitos24423 жыл бұрын
Like always...legendary!
@BroCodez3 жыл бұрын
Thanks Nikitos!
@yehannk4483 жыл бұрын
Bro thanks just what i was looking
@BroCodez3 жыл бұрын
awesome! Thanks for watching Yehan!
@SaallttАй бұрын
Love you bro❤
@youcefmantas4944 Жыл бұрын
Thanks Mate!!
@amr199320122 жыл бұрын
why making the second loop j
@mehdimuhebbi24562 жыл бұрын
i was woundering the same thing...
@chaoticxie14252 жыл бұрын
figure it out? I was wondering the same
@fen-fi Жыл бұрын
The n - i - 1 expression in the inner for loop of the bubbleSort method is used to reduce the number of iterations of the inner loop as the array gets partially sorted. Each pass of the outer loop places the largest element at the end of the array, so in the next pass, there's no need to compare that element again. This is why i is subtracted from n in the condition of the inner loop. This way, the inner loop only needs to iterate over the unsorted part of the array. By reducing the number of comparisons, the algorithm's efficiency is improved and the sorting process is faster.
@iamfromasean7053 жыл бұрын
Thank you for the algorithm!
@BroCodez3 жыл бұрын
Thanks for commenting to help with the KZbin algorithm!
@iamfromasean7053 жыл бұрын
@@BroCodez Bro, can you do quick sort , please?
@Omar-_-_2 жыл бұрын
Amazing, thanks alot
@cashionsteven56953 жыл бұрын
holy moly, way better than my professor lol :))
@vehanhemsara97933 жыл бұрын
Thank You
@BroCodez3 жыл бұрын
Thanks for watching Vehan!
@vehanhemsara97933 жыл бұрын
@@BroCodez 😊❤
@_4p_ Жыл бұрын
it was perfect. all of it
@meetprotrash31783 жыл бұрын
I love you bro thanks 😘💙❤️😘
@BroCodez3 жыл бұрын
THanks bro!
@MrLoser-ks2xn Жыл бұрын
Thanks!
@amkiji29923 жыл бұрын
I Hope you can do a PHP cours i Really like the way that you teach you are amazing
@BroCodez3 жыл бұрын
maybe! I'll let you guys vote on future topics
@sanjays90823 жыл бұрын
Hey bro, Python data structures and algorithms would be awesome 🔥🔥
@BroCodez3 жыл бұрын
maybe in the future, most of my viewers wanted Java
@MaRvELsNERD11 ай бұрын
Bro is the goat 🐐
@ALBERTJOAQUINENSELADA Жыл бұрын
thank you!
@tronganhnguyenthanh1157 Жыл бұрын
I have a mathmetics like that: let text = "AAAABBCCCDA" how do you convert this one to 4A2B3C1D1A" ?
@pjguitar158 ай бұрын
for (int i = 0; i < array.length; i++) { for (int j = 0; j < array.length - 1; j++) { if (array[j] > array[j + 1]) { int temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } } This code worked for me. Why? My second for loop doesn't subtract i from array.length.
@majdkinani58711 ай бұрын
Me watching this as i have an exam tomorrow (im saved by this chad)
@kevinandgame49322 ай бұрын
You saved my grade bro
@TITAN-sv5eg Жыл бұрын
thanks for clarify this
@elbioiseas73663 жыл бұрын
Good video explanation of the Bubble Sort algorithm. Would it be possible to make a video of binary tree algorithm with the different ways of visiting the tree structure plus how to insert, delete and search for a node in the tree? It would be very educational. Thank you.
@BroCodez3 жыл бұрын
I'm planning binary trees for a future video
@canadianbeast86712 жыл бұрын
another simple implementation of bubble-sort algorithm public static void bubble(int[] arr) { int temp; for(int i=0; i
@YohannesBayeh2 ай бұрын
So comparasion is always happens even if it is sorted
@YohannesBayeh2 ай бұрын
Thank you bro😊
@GhaziKhanShinwariАй бұрын
Thanks very much bro code, i'm really like you
@Math_kru_earng25 күн бұрын
thanks!
@admoonhermiz1 Жыл бұрын
thank you!!!
@chefskiss651 Жыл бұрын
What should I do if I'm dealing with a large data set?