From c56bbaa8bf6faf60a6476873ca24f5f695157eec Mon Sep 17 00:00:00 2001 From: Andlek Date: Sun, 14 May 2023 13:23:00 +0400 Subject: [PATCH 1/2] =?UTF-8?q?=D0=A0=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=BE?= =?UTF-8?q?=D0=B2=D0=B0=D0=BB=20=D1=81=D0=BE=D1=80=D1=82=D0=B8=D1=80=D0=BE?= =?UTF-8?q?=D0=B2=D0=BA=D1=83=20=D0=BF=D1=83=D0=B7=D1=8B=D1=80=D1=8C=D0=BA?= =?UTF-8?q?=D0=BE=D0=B2=D1=8B=D0=BC=20=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D0=BE?= =?UTF-8?q?=D0=BC=20=D0=B8=20=D1=81=D1=80=D0=B0=D0=B2=D0=BD=D0=B8=D0=BB=20?= =?UTF-8?q?=D1=81=20collection.sort?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../otus/java/homework/HomeworkTemplate.java | 46 ------------------ .../ru/otus/java/homework/SortingArray.java | 47 +++++++++++++++++++ 2 files changed, 47 insertions(+), 46 deletions(-) delete mode 100644 L06-if_loops_arrays/src/ru/otus/java/homework/HomeworkTemplate.java create mode 100644 L06-if_loops_arrays/src/ru/otus/java/homework/SortingArray.java diff --git a/L06-if_loops_arrays/src/ru/otus/java/homework/HomeworkTemplate.java b/L06-if_loops_arrays/src/ru/otus/java/homework/HomeworkTemplate.java deleted file mode 100644 index 030bfc9..0000000 --- a/L06-if_loops_arrays/src/ru/otus/java/homework/HomeworkTemplate.java +++ /dev/null @@ -1,46 +0,0 @@ -package ru.otus.java.homework; - -import java.util.Scanner; - -/** - * Заготовка для выполнения ДЗ "Система тестирования". - */ -public class HomeworkTemplate { - public static void main(String[] args) { - // Переменные для хранения количества правильных и неправильных ответов - int correctCount = 0, wrongCount = 0; - - // Ниже вместо null надо написать реализацию, - // написано так, чтобы просто компилировалось - - // TODO: Массив вопросов (вместо null надо написать определение массива) - String[] questions = null; - - // TODO: Массив вариантов ответов - String[][] answerOptions = null; - - // TODO: Массив правильных ответов - int[] correctAnswers = null; - - // Примечание - можете придумать как хранить всю информацию в одном массиве - - Scanner scanner = new Scanner(System.in); - // TODO: Цикл по всем вопросам - исправить, написать правильно - for(int i = 0; i < 0; i++) { - // TODO: Вывод вопроса на экран - - // TODO: Вывод вариантов ответов на экран - - System.out.print("Ваш ответ: "); - //TODO: Считываем с консоли ответ пользователя - - //TODO: Проверяем ответ и выводим результат - // а также увеличиваем счетчики правильных и неправильных ответов - - System.out.println(); - } - - //Выводим общий результат - System.out.println("Результат: правильно " + correctCount + ", неправильно " + wrongCount); - } -} diff --git a/L06-if_loops_arrays/src/ru/otus/java/homework/SortingArray.java b/L06-if_loops_arrays/src/ru/otus/java/homework/SortingArray.java new file mode 100644 index 0000000..90e40eb --- /dev/null +++ b/L06-if_loops_arrays/src/ru/otus/java/homework/SortingArray.java @@ -0,0 +1,47 @@ +package ru.otus.java.homework; + +import java.util.Arrays; +import java.util.Collections; + +public class SortingArray { + public static void bubbleSort(int[] array) { + int n = array.length; + + for (int i = 0; i < n - 1; i++) { + for (int j = 0; j < n - i - 1; j++) { + if (array[j] > array[j + 1]) { + int temp = array[j]; + array[j] = array[j + 1]; + array[j + 1] = temp; + } + } + } + } + + public static void main(String[] args) { + int[] array = {356,789,864,986,753,583,525,394,610,240,685,973,836,223,906,876,830,59,88,698,83,152,452,851,603,601,127,440,472,714,958,597,647,669,744,856,445,933,63,144,34,277,827,125,378,615,678,969,970,278,663,576,463,398,311,451,738,627,588,332,380,133,231,174,391,486,629,813,99,746,256,197,493,733,211,898,156,269,67,203,49,488,351,540,31,651,482,700,822,271,643,599,246,124,704,19,688,848,679,162,957,671,697,424,444,841,650,310,686,896,405,309,3,36,804,953,365,250,357,653,413,107,178,604,710,131,793,432,565,507,322,924,523,506,371,637,487,542,316,942,570,285,1,644,763,695,232,368,184,988,476,571,239,762,959,740,118,287,992,660,626,747,461,363,821,167,466,188,730,954,941,990,515,631,555,725,266,537,12,454,545,819,11,689,324,857,844,553,776,691,292,208,874,412,339,870,562,708,180,97,972,149,564,750,929,754,921,911,470,362,769,717,613,435,179,496,345,674,829,759,326,196,8,802,458,436,950,139,447,38,355,877,617,635,546,274,838,270,264,652,594,381,209,835,272,885,815,395,530,574,784,917,985,78,442,539,795,801,513,9,358,79,863,814,220,293,296,7,51,342,554,772,946,55,327,244,934,963,761,388,477,608,147,159,868,462,859,770,30,852,122,268,728,587,260,212,775,648,712,642,598,312,526,171,593,291,548,202,485,206,300,214,495,854,148,687,449,605,919,749,847,114,481,567,638,624,656,53,44,57,602,384,926,1000,347,5,387,453,72,572,865,150,742,47,625,703,186,862,817,474,872,531,17,490,664,29,27,891,551,808,508,389,812,964,855,751,612,84,429,748,816,633,641,230,809,479,845,182,918,952,187,786,811,680,201,282,976,175,286,491,227,998,622,161,140,158,590,417,441,559,400,35,70,899,279,655,386,89,492,543,176,533,853,94,552,382,884,657,92,121,840,26,45,480,242,922,305,519,350,185,100,306,658,782,581,609,408,611,752,727,901,383,897,566,403,529,170,978,755,66,805,54,980,468,777,465,101,736,743,760,783,173,352,415,538,561,253,137,24,298,25,82,135,46,560,935,961,677,428,21,255,130,541,735,172,527,616,887,337,619,205,512,238,321,120,425,606,504,164,234,116,584,448,720,438,766,595,881,414,996,842,297,882,267,767,456,483,659,965,404,71,183,216,807,103,799,997,132,314,787,938,427,160,237,330,353,509,948,346,115,123,222,374,336,732,73,50,283,263,397,665,729,914,251,705,818,788,236,947,215,295,724,518,219,430,550,563,568,707,578,213,684,640,672,858,153,154,514,535,913,151,113,895,823,940,991,110,290,192,764,42,33,90,450,741,928,75,987,459,218,939,756,87,785,719,955,112,779,575,331,104,68,349,927,654,860,828,544,464,48,999,117,528,586,908,681,499,373,128,385,224,229,923,765,558,589,683,369,585,377,155,437,797,709,302,217,931,711,401,284,781,198,517,475,905,402,956,582,521,142,43,774,912,478,981,580,367,4,936,360,245,431,723,916,354,960,243,547,826,443,869,473,248,591,694,791,715,338,423,364,623,975,228,2,95,937,690,204,702,614,693,833,111,126,600,334,649,645,894,930,265,920,505,780,803,757,982,662,798,673,497,181,348,792,399,849,289,501,294,165,831,983,28,889,945,143,190,341,989,873,390,726,409,721,557,193,191,460,498,837,549,80,993,943,392,301,977,734,410,86,758,878,288,692,713,333,915,534,843,343,646,967,370,731,275,621,320,307,23,867,974,376,325,411,577,951,666,81,235,832,861,129,620,745,77,64,329,971,890,249,668,910,241,200,145,177,315,134,471,96,340,824,489,166,569,138,76,932,839,61,810,233,221,457,257,58,722,344,396,699,105,375,93,880,226,696,636,85,639,596,136,426,966,778,883,871,106,630,13,875,420,317,701,146,520,439,455,676,6,304,879,225,592,280,422,32,303,866,273,299,944,446,418,800,18,850,366,102,682,949,536,469,141,14,157,16,670,984,737,168,98,516,74,790,434,503,39,846,771,634,69,407,768,773,806,262,718,433,628,119,194,888,323,56,968,892,252,500,276,979,359,195,893,163,522,886,834,10,556,22,909,904,925,510,393,994,511,210,419,607,62,328,675,524,169,661,825,502,41,108,335,532,258,962,313,907,900,573,199,416,716,189,319,467,902,903,259,65,372,281,318,796,421,632,406,37,207,794,494,261,20,52,667,995,484,254,379,579,40,706,15,361,247,60,109,820,308,739,91,618}; + + System.out.println("Исходный массив:"); + System.out.println(Arrays.toString(array)); + + // Сортировка пузырьком + long startTime = System.currentTimeMillis(); + bubbleSort(array); + long endTime = System.currentTimeMillis(); + + System.out.println("Отсортированный массив (пузырьковая сортировка):"); + System.out.println(Arrays.toString(array)); + System.out.println("Время выполнения (пузырьковая сортировка): " + (endTime - startTime) + " мс"); + + // Сортировка с использованием Collections.sort() + int[] arrayCopy = {356,789,864,986,753,583,525,394,610,240,685,973,836,223,906,876,830,59,88,698,83,152,452,851,603,601,127,440,472,714,958,597,647,669,744,856,445,933,63,144,34,277,827,125,378,615,678,969,970,278,663,576,463,398,311,451,738,627,588,332,380,133,231,174,391,486,629,813,99,746,256,197,493,733,211,898,156,269,67,203,49,488,351,540,31,651,482,700,822,271,643,599,246,124,704,19,688,848,679,162,957,671,697,424,444,841,650,310,686,896,405,309,3,36,804,953,365,250,357,653,413,107,178,604,710,131,793,432,565,507,322,924,523,506,371,637,487,542,316,942,570,285,1,644,763,695,232,368,184,988,476,571,239,762,959,740,118,287,992,660,626,747,461,363,821,167,466,188,730,954,941,990,515,631,555,725,266,537,12,454,545,819,11,689,324,857,844,553,776,691,292,208,874,412,339,870,562,708,180,97,972,149,564,750,929,754,921,911,470,362,769,717,613,435,179,496,345,674,829,759,326,196,8,802,458,436,950,139,447,38,355,877,617,635,546,274,838,270,264,652,594,381,209,835,272,885,815,395,530,574,784,917,985,78,442,539,795,801,513,9,358,79,863,814,220,293,296,7,51,342,554,772,946,55,327,244,934,963,761,388,477,608,147,159,868,462,859,770,30,852,122,268,728,587,260,212,775,648,712,642,598,312,526,171,593,291,548,202,485,206,300,214,495,854,148,687,449,605,919,749,847,114,481,567,638,624,656,53,44,57,602,384,926,1000,347,5,387,453,72,572,865,150,742,47,625,703,186,862,817,474,872,531,17,490,664,29,27,891,551,808,508,389,812,964,855,751,612,84,429,748,816,633,641,230,809,479,845,182,918,952,187,786,811,680,201,282,976,175,286,491,227,998,622,161,140,158,590,417,441,559,400,35,70,899,279,655,386,89,492,543,176,533,853,94,552,382,884,657,92,121,840,26,45,480,242,922,305,519,350,185,100,306,658,782,581,609,408,611,752,727,901,383,897,566,403,529,170,978,755,66,805,54,980,468,777,465,101,736,743,760,783,173,352,415,538,561,253,137,24,298,25,82,135,46,560,935,961,677,428,21,255,130,541,735,172,527,616,887,337,619,205,512,238,321,120,425,606,504,164,234,116,584,448,720,438,766,595,881,414,996,842,297,882,267,767,456,483,659,965,404,71,183,216,807,103,799,997,132,314,787,938,427,160,237,330,353,509,948,346,115,123,222,374,336,732,73,50,283,263,397,665,729,914,251,705,818,788,236,947,215,295,724,518,219,430,550,563,568,707,578,213,684,640,672,858,153,154,514,535,913,151,113,895,823,940,991,110,290,192,764,42,33,90,450,741,928,75,987,459,218,939,756,87,785,719,955,112,779,575,331,104,68,349,927,654,860,828,544,464,48,999,117,528,586,908,681,499,373,128,385,224,229,923,765,558,589,683,369,585,377,155,437,797,709,302,217,931,711,401,284,781,198,517,475,905,402,956,582,521,142,43,774,912,478,981,580,367,4,936,360,245,431,723,916,354,960,243,547,826,443,869,473,248,591,694,791,715,338,423,364,623,975,228,2,95,937,690,204,702,614,693,833,111,126,600,334,649,645,894,930,265,920,505,780,803,757,982,662,798,673,497,181,348,792,399,849,289,501,294,165,831,983,28,889,945,143,190,341,989,873,390,726,409,721,557,193,191,460,498,837,549,80,993,943,392,301,977,734,410,86,758,878,288,692,713,333,915,534,843,343,646,967,370,731,275,621,320,307,23,867,974,376,325,411,577,951,666,81,235,832,861,129,620,745,77,64,329,971,890,249,668,910,241,200,145,177,315,134,471,96,340,824,489,166,569,138,76,932,839,61,810,233,221,457,257,58,722,344,396,699,105,375,93,880,226,696,636,85,639,596,136,426,966,778,883,871,106,630,13,875,420,317,701,146,520,439,455,676,6,304,879,225,592,280,422,32,303,866,273,299,944,446,418,800,18,850,366,102,682,949,536,469,141,14,157,16,670,984,737,168,98,516,74,790,434,503,39,846,771,634,69,407,768,773,806,262,718,433,628,119,194,888,323,56,968,892,252,500,276,979,359,195,893,163,522,886,834,10,556,22,909,904,925,510,393,994,511,210,419,607,62,328,675,524,169,661,825,502,41,108,335,532,258,962,313,907,900,573,199,416,716,189,319,467,902,903,259,65,372,281,318,796,421,632,406,37,207,794,494,261,20,52,667,995,484,254,379,579,40,706,15,361,247,60,109,820,308,739,91,618}; + + startTime = System.currentTimeMillis(); + Arrays.sort(arrayCopy); + endTime = System.currentTimeMillis(); + + System.out.println("Отсортированный массив (Collections.sort()):"); + System.out.println(Arrays.toString(arrayCopy)); + System.out.println("Время выполнения (Collections.sort()): " + (endTime - startTime) + " мс"); + } +} \ No newline at end of file From d8dd265ccddc501c4237730260b072d8882d279a Mon Sep 17 00:00:00 2001 From: Andlek Date: Sun, 14 May 2023 21:51:55 +0400 Subject: [PATCH 2/2] =?UTF-8?q?=D1=81=D0=B4=D0=B5=D0=BB=D0=B0=D0=BB=20?= =?UTF-8?q?=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F=20=D1=81?= =?UTF-8?q?=20=D1=86=D1=87=D0=B5=D1=82=D0=BE=D0=BC=20=D0=B7=D0=B0=D0=BC?= =?UTF-8?q?=D0=B5=D1=87=D0=B0=D0=BD=D0=B8=D0=B9=20=D0=BF=D0=BE=20=D0=94?= =?UTF-8?q?=D0=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ru/otus/java/homework/SortingArray.java | 71 +++++++++++-------- 1 file changed, 41 insertions(+), 30 deletions(-) diff --git a/L06-if_loops_arrays/src/ru/otus/java/homework/SortingArray.java b/L06-if_loops_arrays/src/ru/otus/java/homework/SortingArray.java index 90e40eb..7c7946b 100644 --- a/L06-if_loops_arrays/src/ru/otus/java/homework/SortingArray.java +++ b/L06-if_loops_arrays/src/ru/otus/java/homework/SortingArray.java @@ -2,46 +2,57 @@ import java.util.Arrays; import java.util.Collections; +import java.util.Random; public class SortingArray { - public static void bubbleSort(int[] array) { - int n = array.length; - - for (int i = 0; i < n - 1; i++) { - for (int j = 0; j < n - i - 1; j++) { - if (array[j] > array[j + 1]) { - int temp = array[j]; - array[j] = array[j + 1]; - array[j + 1] = temp; - } - } - } - } - public static void main(String[] args) { - int[] array = {356,789,864,986,753,583,525,394,610,240,685,973,836,223,906,876,830,59,88,698,83,152,452,851,603,601,127,440,472,714,958,597,647,669,744,856,445,933,63,144,34,277,827,125,378,615,678,969,970,278,663,576,463,398,311,451,738,627,588,332,380,133,231,174,391,486,629,813,99,746,256,197,493,733,211,898,156,269,67,203,49,488,351,540,31,651,482,700,822,271,643,599,246,124,704,19,688,848,679,162,957,671,697,424,444,841,650,310,686,896,405,309,3,36,804,953,365,250,357,653,413,107,178,604,710,131,793,432,565,507,322,924,523,506,371,637,487,542,316,942,570,285,1,644,763,695,232,368,184,988,476,571,239,762,959,740,118,287,992,660,626,747,461,363,821,167,466,188,730,954,941,990,515,631,555,725,266,537,12,454,545,819,11,689,324,857,844,553,776,691,292,208,874,412,339,870,562,708,180,97,972,149,564,750,929,754,921,911,470,362,769,717,613,435,179,496,345,674,829,759,326,196,8,802,458,436,950,139,447,38,355,877,617,635,546,274,838,270,264,652,594,381,209,835,272,885,815,395,530,574,784,917,985,78,442,539,795,801,513,9,358,79,863,814,220,293,296,7,51,342,554,772,946,55,327,244,934,963,761,388,477,608,147,159,868,462,859,770,30,852,122,268,728,587,260,212,775,648,712,642,598,312,526,171,593,291,548,202,485,206,300,214,495,854,148,687,449,605,919,749,847,114,481,567,638,624,656,53,44,57,602,384,926,1000,347,5,387,453,72,572,865,150,742,47,625,703,186,862,817,474,872,531,17,490,664,29,27,891,551,808,508,389,812,964,855,751,612,84,429,748,816,633,641,230,809,479,845,182,918,952,187,786,811,680,201,282,976,175,286,491,227,998,622,161,140,158,590,417,441,559,400,35,70,899,279,655,386,89,492,543,176,533,853,94,552,382,884,657,92,121,840,26,45,480,242,922,305,519,350,185,100,306,658,782,581,609,408,611,752,727,901,383,897,566,403,529,170,978,755,66,805,54,980,468,777,465,101,736,743,760,783,173,352,415,538,561,253,137,24,298,25,82,135,46,560,935,961,677,428,21,255,130,541,735,172,527,616,887,337,619,205,512,238,321,120,425,606,504,164,234,116,584,448,720,438,766,595,881,414,996,842,297,882,267,767,456,483,659,965,404,71,183,216,807,103,799,997,132,314,787,938,427,160,237,330,353,509,948,346,115,123,222,374,336,732,73,50,283,263,397,665,729,914,251,705,818,788,236,947,215,295,724,518,219,430,550,563,568,707,578,213,684,640,672,858,153,154,514,535,913,151,113,895,823,940,991,110,290,192,764,42,33,90,450,741,928,75,987,459,218,939,756,87,785,719,955,112,779,575,331,104,68,349,927,654,860,828,544,464,48,999,117,528,586,908,681,499,373,128,385,224,229,923,765,558,589,683,369,585,377,155,437,797,709,302,217,931,711,401,284,781,198,517,475,905,402,956,582,521,142,43,774,912,478,981,580,367,4,936,360,245,431,723,916,354,960,243,547,826,443,869,473,248,591,694,791,715,338,423,364,623,975,228,2,95,937,690,204,702,614,693,833,111,126,600,334,649,645,894,930,265,920,505,780,803,757,982,662,798,673,497,181,348,792,399,849,289,501,294,165,831,983,28,889,945,143,190,341,989,873,390,726,409,721,557,193,191,460,498,837,549,80,993,943,392,301,977,734,410,86,758,878,288,692,713,333,915,534,843,343,646,967,370,731,275,621,320,307,23,867,974,376,325,411,577,951,666,81,235,832,861,129,620,745,77,64,329,971,890,249,668,910,241,200,145,177,315,134,471,96,340,824,489,166,569,138,76,932,839,61,810,233,221,457,257,58,722,344,396,699,105,375,93,880,226,696,636,85,639,596,136,426,966,778,883,871,106,630,13,875,420,317,701,146,520,439,455,676,6,304,879,225,592,280,422,32,303,866,273,299,944,446,418,800,18,850,366,102,682,949,536,469,141,14,157,16,670,984,737,168,98,516,74,790,434,503,39,846,771,634,69,407,768,773,806,262,718,433,628,119,194,888,323,56,968,892,252,500,276,979,359,195,893,163,522,886,834,10,556,22,909,904,925,510,393,994,511,210,419,607,62,328,675,524,169,661,825,502,41,108,335,532,258,962,313,907,900,573,199,416,716,189,319,467,902,903,259,65,372,281,318,796,421,632,406,37,207,794,494,261,20,52,667,995,484,254,379,579,40,706,15,361,247,60,109,820,308,739,91,618}; + //тут генерируем массив чисел + int[] array = generateRandomArray(100_000); - System.out.println("Исходный массив:"); - System.out.println(Arrays.toString(array)); + //копируем этот массив для сортировки пузырьковым методом + int[] bubleSortArray = Arrays.copyOf(array, array.length); - // Сортировка пузырьком + // используем collection.sort() для сортировки, замеряем время long startTime = System.currentTimeMillis(); - bubbleSort(array); + Arrays.sort(array); long endTime = System.currentTimeMillis(); + long collectionSortTime = endTime - startTime; - System.out.println("Отсортированный массив (пузырьковая сортировка):"); - System.out.println(Arrays.toString(array)); - System.out.println("Время выполнения (пузырьковая сортировка): " + (endTime - startTime) + " мс"); - - // Сортировка с использованием Collections.sort() - int[] arrayCopy = {356,789,864,986,753,583,525,394,610,240,685,973,836,223,906,876,830,59,88,698,83,152,452,851,603,601,127,440,472,714,958,597,647,669,744,856,445,933,63,144,34,277,827,125,378,615,678,969,970,278,663,576,463,398,311,451,738,627,588,332,380,133,231,174,391,486,629,813,99,746,256,197,493,733,211,898,156,269,67,203,49,488,351,540,31,651,482,700,822,271,643,599,246,124,704,19,688,848,679,162,957,671,697,424,444,841,650,310,686,896,405,309,3,36,804,953,365,250,357,653,413,107,178,604,710,131,793,432,565,507,322,924,523,506,371,637,487,542,316,942,570,285,1,644,763,695,232,368,184,988,476,571,239,762,959,740,118,287,992,660,626,747,461,363,821,167,466,188,730,954,941,990,515,631,555,725,266,537,12,454,545,819,11,689,324,857,844,553,776,691,292,208,874,412,339,870,562,708,180,97,972,149,564,750,929,754,921,911,470,362,769,717,613,435,179,496,345,674,829,759,326,196,8,802,458,436,950,139,447,38,355,877,617,635,546,274,838,270,264,652,594,381,209,835,272,885,815,395,530,574,784,917,985,78,442,539,795,801,513,9,358,79,863,814,220,293,296,7,51,342,554,772,946,55,327,244,934,963,761,388,477,608,147,159,868,462,859,770,30,852,122,268,728,587,260,212,775,648,712,642,598,312,526,171,593,291,548,202,485,206,300,214,495,854,148,687,449,605,919,749,847,114,481,567,638,624,656,53,44,57,602,384,926,1000,347,5,387,453,72,572,865,150,742,47,625,703,186,862,817,474,872,531,17,490,664,29,27,891,551,808,508,389,812,964,855,751,612,84,429,748,816,633,641,230,809,479,845,182,918,952,187,786,811,680,201,282,976,175,286,491,227,998,622,161,140,158,590,417,441,559,400,35,70,899,279,655,386,89,492,543,176,533,853,94,552,382,884,657,92,121,840,26,45,480,242,922,305,519,350,185,100,306,658,782,581,609,408,611,752,727,901,383,897,566,403,529,170,978,755,66,805,54,980,468,777,465,101,736,743,760,783,173,352,415,538,561,253,137,24,298,25,82,135,46,560,935,961,677,428,21,255,130,541,735,172,527,616,887,337,619,205,512,238,321,120,425,606,504,164,234,116,584,448,720,438,766,595,881,414,996,842,297,882,267,767,456,483,659,965,404,71,183,216,807,103,799,997,132,314,787,938,427,160,237,330,353,509,948,346,115,123,222,374,336,732,73,50,283,263,397,665,729,914,251,705,818,788,236,947,215,295,724,518,219,430,550,563,568,707,578,213,684,640,672,858,153,154,514,535,913,151,113,895,823,940,991,110,290,192,764,42,33,90,450,741,928,75,987,459,218,939,756,87,785,719,955,112,779,575,331,104,68,349,927,654,860,828,544,464,48,999,117,528,586,908,681,499,373,128,385,224,229,923,765,558,589,683,369,585,377,155,437,797,709,302,217,931,711,401,284,781,198,517,475,905,402,956,582,521,142,43,774,912,478,981,580,367,4,936,360,245,431,723,916,354,960,243,547,826,443,869,473,248,591,694,791,715,338,423,364,623,975,228,2,95,937,690,204,702,614,693,833,111,126,600,334,649,645,894,930,265,920,505,780,803,757,982,662,798,673,497,181,348,792,399,849,289,501,294,165,831,983,28,889,945,143,190,341,989,873,390,726,409,721,557,193,191,460,498,837,549,80,993,943,392,301,977,734,410,86,758,878,288,692,713,333,915,534,843,343,646,967,370,731,275,621,320,307,23,867,974,376,325,411,577,951,666,81,235,832,861,129,620,745,77,64,329,971,890,249,668,910,241,200,145,177,315,134,471,96,340,824,489,166,569,138,76,932,839,61,810,233,221,457,257,58,722,344,396,699,105,375,93,880,226,696,636,85,639,596,136,426,966,778,883,871,106,630,13,875,420,317,701,146,520,439,455,676,6,304,879,225,592,280,422,32,303,866,273,299,944,446,418,800,18,850,366,102,682,949,536,469,141,14,157,16,670,984,737,168,98,516,74,790,434,503,39,846,771,634,69,407,768,773,806,262,718,433,628,119,194,888,323,56,968,892,252,500,276,979,359,195,893,163,522,886,834,10,556,22,909,904,925,510,393,994,511,210,419,607,62,328,675,524,169,661,825,502,41,108,335,532,258,962,313,907,900,573,199,416,716,189,319,467,902,903,259,65,372,281,318,796,421,632,406,37,207,794,494,261,20,52,667,995,484,254,379,579,40,706,15,361,247,60,109,820,308,739,91,618}; - + // тоже самое пузырьком startTime = System.currentTimeMillis(); - Arrays.sort(arrayCopy); + bubleSort(bubleSortArray); endTime = System.currentTimeMillis(); + long bubleSortTime = endTime - startTime; - System.out.println("Отсортированный массив (Collections.sort()):"); - System.out.println(Arrays.toString(arrayCopy)); - System.out.println("Время выполнения (Collections.sort()): " + (endTime - startTime) + " мс"); + System.out.println("Время сортировки с помощью collection.Sort(): " + collectionSortTime + " мс"); + System.out.println("Время сортировки пузырьковым методом: " + bubleSortTime + " мс"); + } + + private static int[] generateRandomArray(int size) { + int[] array = new int[size]; + Random random = new Random(); + for (int i = 0; i < size; i++) { + array[i] = random.nextInt(); + } + return array; + } + + public static void bubleSort(int[] array) { + int n = array.length; + boolean swapped; + for (int i = 0; i < n - 1; i++) { + swapped = false; + for (int j = 0; j < n - 1; j++) { + if (array[j] > array[j + 1]) { + int temp = array[j]; + array[j] = array[j + 1]; + array[j + 1] = temp; + swapped = true; + } + } + if (!swapped) { + break; + } + } } } \ No newline at end of file