<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=62.134.204.132&amp;*</id>
		<title>Викиконспекты - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=62.134.204.132&amp;*"/>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/62.134.204.132"/>
		<updated>2026-04-21T21:53:23Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%BE%D0%BC&amp;diff=40119</id>
		<title>Сортировка выбором</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%BE%D0%BC&amp;diff=40119"/>
				<updated>2014-10-02T10:03:45Z</updated>
		
		<summary type="html">&lt;p&gt;62.134.204.132: /* Реализация */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Сортировка выбором''' (англ. '''selection sort''') {{---}} простой алгоритм сортировки со сложностью &amp;lt;tex&amp;gt;O(n^2)&amp;lt;/tex&amp;gt;, где &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; {{---}} количество элементов для сортировки.&lt;br /&gt;
&lt;br /&gt;
== Алгоритм ==&lt;br /&gt;
На каждом &amp;lt;tex&amp;gt;i&amp;lt;/tex&amp;gt;-ом шаге алгоритма находим &amp;lt;tex&amp;gt;i&amp;lt;/tex&amp;gt;-ый минимальный элемент и меняем его местами с &amp;lt;tex&amp;gt;i&amp;lt;/tex&amp;gt;-ым элементом в массиве. Таким образом будет получен массив отсортированный по неубыванию.&lt;br /&gt;
&lt;br /&gt;
== Реализация ==&lt;br /&gt;
Вариант 1.&lt;br /&gt;
  SelectionSort(a)&lt;br /&gt;
    for i = 0 to n - 2&lt;br /&gt;
      min = i;&lt;br /&gt;
      for j = i + 1 to n - 1&lt;br /&gt;
        if a[j] &amp;lt; a[min]&lt;br /&gt;
          min = j;&lt;br /&gt;
      swap(a[i], a[min]);&lt;br /&gt;
&lt;br /&gt;
Вариант 2.&lt;br /&gt;
  SelectionSort(a)&lt;br /&gt;
    for i = 0 to n - 2&lt;br /&gt;
      for j = i + 1 to n - 1&lt;br /&gt;
        if a[i] &amp;gt; a[j]&lt;br /&gt;
          swap(a[i], a[j]);&lt;br /&gt;
&lt;br /&gt;
== Пример ==&lt;br /&gt;
&lt;br /&gt;
Пусть дана последовательность из &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt; элементов &amp;lt;tex&amp;gt;5, 4, 1, 2, 3&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;background-color:#CCC;margin:0.5px&amp;quot;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| Массив&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| Описание шага&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|''Первый проход (текущий массив начинается с первого элемента)''&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 5 4 '''1''' 2 3&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Находим первый минимальный элемент {{---}} '''1''' &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| '''1''' 4 '''5''' 2 3&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Меняем минимальный и первый элементы местами&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|''Второй проход (текущий массив начинается со следующего элемента)''&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 5 4 '''2''' 3&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Находим следующий минимальный элемент {{---}} '''2''' &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 '''2''' 4 '''5''' 3&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Меняем минимальный и второй элементы местами&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|''Третий проход (текущий массив начинается со следующего элемента)''&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 4 5 '''3'''&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Находим следующий минимальный элемент {{---}} '''3''' &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 '''3''' 5 '''4'''&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Меняем минимальный и третий элементы местами&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|''Четвертый проход (текущий массив начинается со следующего элемента)''&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 3 5 '''4'''&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Находим следующий минимальный элемент {{---}} '''4''' &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 3 '''4''' '''5'''&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Меняем минимальный и четвертый элементы местами&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 3 4 5&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Массив отсортирован&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ссылки == &lt;br /&gt;
*[http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%BE%D0%BC Сортировка выбором в русской википедии]&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
*''Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К.'' Алгоритмы: построение и анализ, 2-е издание. М.: Издательский дом &amp;quot;Вильямс&amp;quot;, 2005. ISBN 5-8459-0857-4&lt;br /&gt;
&lt;br /&gt;
[[Категория: Дискретная математика и алгоритмы]]&lt;br /&gt;
[[Категория: Сортировки]]&lt;/div&gt;</summary>
		<author><name>62.134.204.132</name></author>	</entry>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%BE%D0%BC&amp;diff=40118</id>
		<title>Сортировка выбором</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%BE%D0%BC&amp;diff=40118"/>
				<updated>2014-10-02T09:56:45Z</updated>
		
		<summary type="html">&lt;p&gt;62.134.204.132: /* Реализация */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Сортировка выбором''' (англ. '''selection sort''') {{---}} простой алгоритм сортировки со сложностью &amp;lt;tex&amp;gt;O(n^2)&amp;lt;/tex&amp;gt;, где &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; {{---}} количество элементов для сортировки.&lt;br /&gt;
&lt;br /&gt;
== Алгоритм ==&lt;br /&gt;
На каждом &amp;lt;tex&amp;gt;i&amp;lt;/tex&amp;gt;-ом шаге алгоритма находим &amp;lt;tex&amp;gt;i&amp;lt;/tex&amp;gt;-ый минимальный элемент и меняем его местами с &amp;lt;tex&amp;gt;i&amp;lt;/tex&amp;gt;-ым элементом в массиве. Таким образом будет получен массив отсортированный по неубыванию.&lt;br /&gt;
&lt;br /&gt;
== Реализация ==&lt;br /&gt;
Вариант 1.&lt;br /&gt;
  SelectionSort(a)&lt;br /&gt;
    for i = 0 to n - 1&lt;br /&gt;
      min = i;&lt;br /&gt;
      for j = i + 1 to n&lt;br /&gt;
        if a[j] &amp;lt; a[min]&lt;br /&gt;
          min = j;&lt;br /&gt;
      swap(a[i], a[min]);&lt;br /&gt;
&lt;br /&gt;
Вариант 2.&lt;br /&gt;
  SelectionSort(a)&lt;br /&gt;
    for i = 0 to n - 1&lt;br /&gt;
      for j = i + 1 to n&lt;br /&gt;
        if a[i] &amp;gt; a[j]&lt;br /&gt;
          swap(a[i], a[j]);&lt;br /&gt;
&lt;br /&gt;
== Пример ==&lt;br /&gt;
&lt;br /&gt;
Пусть дана последовательность из &amp;lt;tex&amp;gt;5&amp;lt;/tex&amp;gt; элементов &amp;lt;tex&amp;gt;5, 4, 1, 2, 3&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;background-color:#CCC;margin:0.5px&amp;quot;&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| Массив&lt;br /&gt;
!style=&amp;quot;background-color:#EEE&amp;quot;| Описание шага&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|''Первый проход (текущий массив начинается с первого элемента)''&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 5 4 '''1''' 2 3&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Находим первый минимальный элемент {{---}} '''1''' &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| '''1''' 4 '''5''' 2 3&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Меняем минимальный и первый элементы местами&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|''Второй проход (текущий массив начинается со следующего элемента)''&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 5 4 '''2''' 3&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Находим следующий минимальный элемент {{---}} '''2''' &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 '''2''' 4 '''5''' 3&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Меняем минимальный и второй элементы местами&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|''Третий проход (текущий массив начинается со следующего элемента)''&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 4 5 '''3'''&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Находим следующий минимальный элемент {{---}} '''3''' &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 '''3''' 5 '''4'''&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Меняем минимальный и третий элементы местами&lt;br /&gt;
|-&lt;br /&gt;
|colspan=3|''Четвертый проход (текущий массив начинается со следующего элемента)''&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 3 5 '''4'''&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Находим следующий минимальный элемент {{---}} '''4''' &lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 3 '''4''' '''5'''&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Меняем минимальный и четвертый элементы местами&lt;br /&gt;
|-&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| 1 2 3 4 5&lt;br /&gt;
|style=&amp;quot;background-color:#FFF;padding:2px 10px&amp;quot;| Массив отсортирован&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Ссылки == &lt;br /&gt;
*[http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%B2%D1%8B%D0%B1%D0%BE%D1%80%D0%BE%D0%BC Сортировка выбором в русской википедии]&lt;br /&gt;
&lt;br /&gt;
== Литература ==&lt;br /&gt;
*''Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К.'' Алгоритмы: построение и анализ, 2-е издание. М.: Издательский дом &amp;quot;Вильямс&amp;quot;, 2005. ISBN 5-8459-0857-4&lt;br /&gt;
&lt;br /&gt;
[[Категория: Дискретная математика и алгоритмы]]&lt;br /&gt;
[[Категория: Сортировки]]&lt;/div&gt;</summary>
		<author><name>62.134.204.132</name></author>	</entry>

	</feed>