Counting sort (original) (raw)

About DBpedia

Counting sort je algoritmus řazení, který je vhodný pro řazení velkého pole prvků, nabývajících jen malý počet různých diskrétních hodnot. Algoritmus řadí stabilně.

Property Value
dbo:abstract Counting sort je algoritmus řazení, který je vhodný pro řazení velkého pole prvků, nabývajících jen malý počet různých diskrétních hodnot. Algoritmus řadí stabilně. (cs) Countingsort (von englisch count „zählen“) ist ein stabiles Sortierverfahren, das eine gegebene Folge von Elementen mit linearem Zeitaufwand (Problemkomplexität ) sortiert, wenn deren Sortierschlüssel natürliche Zahlen aus einem beschränkten Intervall mit möglichen Werten sind (oder sich darauf abbilden lassen). Der Algorithmus arbeitet nicht vergleichsbasiert, sondern zählt die Vorkommnisse der Schlüsselwerte – er arbeitet dann adressbasiert. Im Vergleich zum vergleichenden Sortieren mit der bestmöglichen Komplexität ergibt sich ein Vorteil, wenn die Intervalllänge sehr klein gegenüber der Anzahl der zu sortierenden Elemente ist. Gut geeignetes Beispiel: Sortieren aller Einwohner Bayerns (n = 12,85 Mio.) nach ihrem Alter (in vollendeten Jahren: k = 0..150). Schlechtes/nicht umsetzbares Beispiel: Sortieren der Schüler einer Grundschule (n = 300) nach ihrem Nachnamen (Zeichenkette mit max. Länge 40 aus allen möglichen Buchstaben, Umlauten und Sonderzeichen; k ≈ 3540). (de) In computer science, counting sort is an algorithm for sorting a collection of objects according to keys that are small positive integers; that is, it is an integer sorting algorithm. It operates by counting the number of objects that possess distinct key values, and applying prefix sum on those counts to determine the positions of each key value in the output sequence. Its running time is linear in the number of items and the difference between the maximum key value and the minimum key value, so it is only suitable for direct use in situations where the variation in keys is not significantly greater than the number of items. It is often used as a subroutine in radix sort, another sorting algorithm, which can handle larger keys more efficiently. Counting sort is not a comparison sort; it uses key values as indexes into an array and the Ω(n log n) lower bound for comparison sorting will not apply. Bucket sort may be used in lieu of counting sort, and entails a similar time analysis. However, compared to counting sort, bucket sort requires linked lists, dynamic arrays, or a large amount of pre-allocated memory to hold the sets of items within each bucket, whereas counting sort stores a single number (the count of items) per bucket. (en) El ordenamiento por cuentas (counting sort en inglés) es un algoritmo de ordenamiento en el que se cuenta el número de elementos de cada clase para luego ordenarlos. Solo puede ser utilizado por tanto para ordenar elementos que sean contables (como los números enteros en un determinado intervalo, pero no los números reales, por ejemplo). El primer paso consiste en averiguar cuál es el intervalo dentro del que están los datos a ordenar (valores mínimo y máximo). Después se crea un vector de números enteros con tantos elementos como valores haya en el intervalo [mínimo, máximo], y a cada elemento se le da el valor 0 (0 apariciones). Tras esto se recorren todos los elementos a ordenar y se cuenta el número de apariciones de cada elemento (usando el vector que hemos creado). Por último, basta con recorrer este vector para tener todos los elementos ordenados. (es) Le tri comptage (counting sort en anglais), appelé aussi tri casier, est un algorithme de tri par dénombrement qui s'applique sur des valeurs entières. (fr) Il Counting sort è un algoritmo di ordinamento per valori numerici interi con complessità lineare. L'algoritmo si basa sulla conoscenza a priori dell'intervallo in cui sono compresi i valori da ordinare. (it) Counting sort, soms ook count-sort genoemd, is een extreem simpel sorteeralgoritme, dat alleen kan worden gebruikt voor gehele getallen en daarmee vergelijkbare objecten. Juist door de beperkte toepassingsmogelijkheden, kan het een zeer efficiënte manier van sorteren zijn. Een voorwaarde daarvoor is dat de kleinste en de grootste voorkomende waarde bekend zijn, en dat de te sorteren getallen in een relatief klein bereik liggen. (nl) Sortowanie przez zliczanie (ang. counting sort) – metoda sortowania danych, która polega na sprawdzeniu ile wystąpień kluczy mniejszych od danego występuje w sortowanej tablicy. Algorytm zakłada, że klucze elementów należą do skończonego zbioru (np. są to liczby całkowite z przedziału 0..100), co ogranicza możliwości jego zastosowania. (pl) Сортировка подсчётом (англ. counting sort; сортировка посредством подсчёта англ. sorting by counting) — алгоритм сортировки, в котором используется диапазон чисел сортируемого массива (списка) для подсчёта совпадающих элементов. Применение сортировки подсчётом целесообразно лишь тогда, когда сортируемые числа имеют (или их можно отобразить в) диапазон возможных значений, который достаточно мал по сравнению с сортируемым множеством, например, миллион натуральных чисел меньших 1000. Предположим, что входной массив состоит из целых чисел в диапазоне от до , где . Далее алгоритм будет обобщён для произвольного целочисленного диапазона. Существует несколько модификаций сортировки подсчётом, ниже рассмотрены три линейных и одна квадратичная, которая использует другой подход, но имеет то же название. (ru) Counting sort é um algoritmo de ordenação estável cuja complexidade é O(n). As chaves podem tomar valores entre 0 e M-1. Se existirem k0 chaves com valor 0, então ocupam as primeiras k0 posições do vetor final: de 0 a k0-1. A ideia básica do counting sort é determinar, para cada entrada x, o número de elementos menor que x. Essa informação pode ser usada para colocar o elemento x diretamente em sua posição no array de saída. Por exemplo, se há 17 elementos menores que x, então x pertence a posição 18. Esse esquema deve ser ligeiramente modificado quando houver vários elementos com o mesmo valor, uma vez que nós não queremos que sejam colocados na mesma posição. (pt) 计数排序(Counting sort)是一种稳定的线性时间排序算法。该算法于1954年由 Harold H. Seward 提出。计数排序使用一个额外的数组,其中第i个元素是待排序数组中值等于的元素的个数。然后根据数组来将中的元素排到正确的位置。 (zh) Сортування підрахунком (англ. Counting sort) — алгоритм впорядкування, що застосовується при малій кількості різних елементів (ключів) у масиві даних. Час його роботи лінійно залежить як від загальної кількості елементів у масиві так і від кількості різних елементів. (uk)
dbo:wikiPageExternalLink https://web.archive.org/web/20130602221151/http:/users.cs.cf.ac.uk/C.L.Mumford/tristan/CountingSort.html https://xlinux.nist.gov/dads/HTML/countingsort.html%7Caccess-date=2011-04-21 http://users.cs.cf.ac.uk/C.L.Mumford/tristan/CountingSort.html http://www.cs.usfca.edu/~galles/visualization/CountingSort.html
dbo:wikiPageID 99864 (xsd:integer)
dbo:wikiPageLength 12459 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID 1116038200 (xsd:integer)
dbo:wikiPageWikiLink dbr:Algorithm dbr:Dynamic_array dbr:Lower_bound dbr:Stable_sort dbr:Comparison_sort dbr:Computer_science dbr:Parallel_algorithm dbr:Prefix_sum dbc:Sorting_algorithms dbr:Linked_list dbr:Histogram dbr:Harold_H._Seward dbr:Array_data_structure dbr:Big_O_notation dbc:Stable_sorts dbr:Collection_(abstract_data_type) dbr:Sorting_Algorithm dbr:Sorting_algorithm dbr:In-place_algorithm dbr:Integer dbr:Integer_sorting dbr:Bucket_sort dbr:Radix_sort dbr:Bit_vector
dbp:class dbr:Sorting_Algorithm
dbp:data dbr:Array_data_structure
dbp:date 2013-06-02 (xsd:date)
dbp:time , where k is the range of the non-negative key values. (en)
dbp:url https://web.archive.org/web/20130602221151/http:/users.cs.cf.ac.uk/C.L.Mumford/tristan/CountingSort.html
dbp:wikiPageUsesTemplate dbt:Citation dbt:Math dbt:Mvar dbt:Reflist dbt:Short_description dbt:Webarchive dbt:Wikibooks dbt:Infobox_algorithm dbt:Sorting
dcterms:subject dbc:Sorting_algorithms dbc:Stable_sorts
gold:hypernym dbr:Algorithm
rdf:type dbo:Software yago:WikicatSortingAlgorithms yago:WikicatStableSorts yago:Abstraction100002137 yago:Act100030358 yago:Activity100407535 yago:Algorithm105847438 yago:Category105838765 yago:Cognition100023271 yago:Concept105835747 yago:Content105809192 yago:Event100029378 yago:Idea105833840 yago:Kind105839024 yago:Procedure101023820 yago:PsychologicalFeature100023100 yago:YagoPermanentlyLocatedEntity yago:Rule105846932 yago:SortingAlgorithm105847658
rdfs:comment Counting sort je algoritmus řazení, který je vhodný pro řazení velkého pole prvků, nabývajících jen malý počet různých diskrétních hodnot. Algoritmus řadí stabilně. (cs) Le tri comptage (counting sort en anglais), appelé aussi tri casier, est un algorithme de tri par dénombrement qui s'applique sur des valeurs entières. (fr) Il Counting sort è un algoritmo di ordinamento per valori numerici interi con complessità lineare. L'algoritmo si basa sulla conoscenza a priori dell'intervallo in cui sono compresi i valori da ordinare. (it) Counting sort, soms ook count-sort genoemd, is een extreem simpel sorteeralgoritme, dat alleen kan worden gebruikt voor gehele getallen en daarmee vergelijkbare objecten. Juist door de beperkte toepassingsmogelijkheden, kan het een zeer efficiënte manier van sorteren zijn. Een voorwaarde daarvoor is dat de kleinste en de grootste voorkomende waarde bekend zijn, en dat de te sorteren getallen in een relatief klein bereik liggen. (nl) Sortowanie przez zliczanie (ang. counting sort) – metoda sortowania danych, która polega na sprawdzeniu ile wystąpień kluczy mniejszych od danego występuje w sortowanej tablicy. Algorytm zakłada, że klucze elementów należą do skończonego zbioru (np. są to liczby całkowite z przedziału 0..100), co ogranicza możliwości jego zastosowania. (pl) 计数排序(Counting sort)是一种稳定的线性时间排序算法。该算法于1954年由 Harold H. Seward 提出。计数排序使用一个额外的数组,其中第i个元素是待排序数组中值等于的元素的个数。然后根据数组来将中的元素排到正确的位置。 (zh) Сортування підрахунком (англ. Counting sort) — алгоритм впорядкування, що застосовується при малій кількості різних елементів (ключів) у масиві даних. Час його роботи лінійно залежить як від загальної кількості елементів у масиві так і від кількості різних елементів. (uk) In computer science, counting sort is an algorithm for sorting a collection of objects according to keys that are small positive integers; that is, it is an integer sorting algorithm. It operates by counting the number of objects that possess distinct key values, and applying prefix sum on those counts to determine the positions of each key value in the output sequence. Its running time is linear in the number of items and the difference between the maximum key value and the minimum key value, so it is only suitable for direct use in situations where the variation in keys is not significantly greater than the number of items. It is often used as a subroutine in radix sort, another sorting algorithm, which can handle larger keys more efficiently. (en) Countingsort (von englisch count „zählen“) ist ein stabiles Sortierverfahren, das eine gegebene Folge von Elementen mit linearem Zeitaufwand (Problemkomplexität ) sortiert, wenn deren Sortierschlüssel natürliche Zahlen aus einem beschränkten Intervall mit möglichen Werten sind (oder sich darauf abbilden lassen). Der Algorithmus arbeitet nicht vergleichsbasiert, sondern zählt die Vorkommnisse der Schlüsselwerte – er arbeitet dann adressbasiert. Im Vergleich zum vergleichenden Sortieren mit der bestmöglichen Komplexität ergibt sich ein Vorteil, wenn die Intervalllänge sehr klein gegenüber der Anzahl der zu sortierenden Elemente ist. (de) El ordenamiento por cuentas (counting sort en inglés) es un algoritmo de ordenamiento en el que se cuenta el número de elementos de cada clase para luego ordenarlos. Solo puede ser utilizado por tanto para ordenar elementos que sean contables (como los números enteros en un determinado intervalo, pero no los números reales, por ejemplo). (es) Counting sort é um algoritmo de ordenação estável cuja complexidade é O(n). As chaves podem tomar valores entre 0 e M-1. Se existirem k0 chaves com valor 0, então ocupam as primeiras k0 posições do vetor final: de 0 a k0-1. (pt) Сортировка подсчётом (англ. counting sort; сортировка посредством подсчёта англ. sorting by counting) — алгоритм сортировки, в котором используется диапазон чисел сортируемого массива (списка) для подсчёта совпадающих элементов. Применение сортировки подсчётом целесообразно лишь тогда, когда сортируемые числа имеют (или их можно отобразить в) диапазон возможных значений, который достаточно мал по сравнению с сортируемым множеством, например, миллион натуральных чисел меньших 1000. (ru)
rdfs:label Counting sort (cs) Countingsort (de) Counting sort (en) Ordenamiento por cuentas (es) Counting sort (it) Tri comptage (fr) 계수 정렬 (ko) Sortowanie przez zliczanie (pl) Counting sort (nl) Counting sort (pt) Сортировка подсчётом (ru) Сортування підрахунком (uk) 计数排序 (zh)
owl:sameAs dbpedia-ru:Counting sort freebase:Counting sort yago-res:Counting sort wikidata:Counting sort dbpedia-bg:Counting sort dbpedia-cs:Counting sort dbpedia-de:Counting sort dbpedia-es:Counting sort dbpedia-fa:Counting sort dbpedia-fi:Counting sort dbpedia-fr:Counting sort dbpedia-he:Counting sort http://hy.dbpedia.org/resource/Հաշվողական_տեսակավորում dbpedia-it:Counting sort dbpedia-ka:Counting sort dbpedia-ko:Counting sort http://ml.dbpedia.org/resource/കൗണ്ടിങ്ങ്_സോർട്ട് dbpedia-nl:Counting sort dbpedia-pl:Counting sort dbpedia-pt:Counting sort dbpedia-sk:Counting sort dbpedia-sr:Counting sort dbpedia-tr:Counting sort dbpedia-uk:Counting sort dbpedia-vi:Counting sort dbpedia-zh:Counting sort https://global.dbpedia.org/id/B9MQ
prov:wasDerivedFrom wikipedia-en:Counting_sort?oldid=1116038200&ns=0
foaf:isPrimaryTopicOf wikipedia-en:Counting_sort
is dbo:knownFor of dbr:Harold_H._Seward
is dbo:wikiPageRedirects of dbr:Tally_sort dbr:Set_sort dbr:Count_sort dbr:Math_sort dbr:Bit_sort dbr:Ultrasort
is dbo:wikiPageWikiLink of dbr:List_of_algorithms dbr:Bead_sort dbr:Retrieval_Data_Structure dbr:Anatree dbr:Comparison_sort dbr:Kruskal's_algorithm dbr:Pigeonhole_sort dbr:Prefix_sum dbr:Tally_sort dbr:Minimum_spanning_tree-based_segmentation dbr:Harold_H._Seward dbr:Sorting_algorithm dbr:Integer_sorting dbr:Bucket_sort dbr:Radix_sort dbr:Selection_sort dbr:Selection_algorithm dbr:List_of_terms_relating_to_algorithms_and_data_structures dbr:Sorted_array dbr:Set_sort dbr:Count_sort dbr:Math_sort dbr:Bit_sort dbr:Ultrasort
is foaf:primaryTopic of wikipedia-en:Counting_sort