Программирование - это просто
Advertisement
Главная arrow Web-программирование arrow Уроки Java Script arrow Web-программирование: «Java Script: операторы цикла, массивы». Сортировка.
01.05.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Web-программирование: «Java Script: операторы цикла, массивы». Сортировка. Печать E-mail
Автор megabax   
08.02.2011 г.

Урок 13. Управление шрифтами в CSS New Page 1

Web-программирование: «Java Script: операторы цикла, массивы». Сортировка.

 

Сегодня мы изучим сортировку и закончим тему циклов. Рассмотрим пример:

 

<HTML>
<HEAD>
<TITLE>Урок 45. Java Script (JS): операторы цикла, массивы, сортировка</TITLE>
</HEAD>

<BODY>
<SCRIPT Language="JavaScript" type="text/javascript">
var nar=new Array();
for (var i=1; i<=5; i++) {
var n=Math.random()*10;
n=Math.round(n);
nar.push(n);
}
document.writeln("До сортировки<br>");
for (var i=0; i<nar.length; i++) {
document.writeln(nar[i]+"<br>");
}
for(var i = 1; i<nar.length; i++) {
for(j=nar.length-1; j>=i; j--) {
if(nar[j-1]>nar[j]) {
x=nar[j-1];
nar[j-1]=nar[j];
nar[j]=x;
}
}
}
document.writeln("После сортировки<br>");
for (var i=0; i<nar.length; i++) {
document.writeln(nar[i]+"<br>");
}
</SCRIPT>
</BODY>
</HTML>

 

Вот что он нам выдаст, когда мы его запустим:

 

Тема сегодняшнего выпуска: «Java Script: операторы цикла, массивы, сортировка».

 

В данном примере алгоритм сортировки взят самый простой, хоть и далеко не оптимальный - алгоритм пузырьковой сортировки.  Его недостаток заключается в том, что при увеличение вдвое числа элементов в массиве сортировки скорость работы уменьшается в четыре разы. Однако, для нашего примера, в котором используется всего 5 элементов, скорость не является критичным фактором, а оптимизация алгоритмов сортировки выходит за рамки данной рассылки.

Суть алгоритма пузырьковой состоит в том, что элемент сортируемого списка как бы "всплывает", подобно пузырьку (кстати, именно поэтому алгоритм получил свое название), и движется он до тех пор, пока не найден свое место.

Как же работает алгоритм пузырьковой сортировки? Верхний цикл перемещает указать в прямом направлении, за указателем элементы оказываются отсортированными. А непосредственно сортировкой занимается вложенный цикл. Он то и как раз "проталкивает" элемент до своего места, делая это путем перестановок. Естественно, перестановка нужна только в том случае, когда предыдущий элемент больше текущего - значит, его нужно "опустить", а текущий наоборот, "поднять".  Если мы сортируем по убыванию, тогда, естественно, все наоборот.

Подробнее об алгоритмах сортировки можно почитать здесь:

 

Алгоритм пузырьковой сортировки

Оптимизация алгоритма пузырьковой сортировки

Алгоритм гномьей сортировки.

Алгоритм сортировки методом отбора

 

 

 

С уважением, Шуравин Александр, e-mail: Этот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script '; document.write( '' ); document.write( addy_text30590 ); document.write( '<\/a>' ); //-->\n Этот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script , автор оставляет за собой право публиковать в рассылках ваши письма, если в письме прямо неоговорено нежелание его публиковать.

 

Последнее обновление ( 08.02.2011 г. )
 
« След.   Пред. »
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги