About: Heapsort

An Entity of Type: Rule105846932, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

In computer science, heapsort is a comparison-based sorting algorithm. Heapsort can be thought of as an improved selection sort: like selection sort, heapsort divides its input into a sorted and an unsorted region, and it iteratively shrinks the unsorted region by extracting the largest element from it and inserting it into the sorted region. Unlike selection sort, heapsort does not waste time with a linear-time scan of the unsorted region; rather, heap sort maintains the unsorted region in a heap data structure to more quickly find the largest element in each step.

Property Value
dbo:abstract
  • تصنيف الكومة (بالإنجليزية: Heap sort)‏ في علم الحاسوب هو عبارة عن خوارزمية تصنيف تعتمد على المقارنات بين القيم المختلفة. يمكن اعتبار تصنيف الكومة بأنه نسخة معدّلة من التصنيف الانتقائي، إذ يقسم كل من التصنيفين المدخلات إلى قسمين، أحدهما مرتب والآخر غير مرتب، ويقلَّل حجم القسم غير المرتب بشكل دوري ومتتابع من خلال اختيار القيمة الأعلى من بين القيم غير المرتبة وموضعتها بطريقة صحيحة في القسم المرتب. يختلف تصنيف الكومة عن التصنيف الانتقائي من حيث الفعالية فيما يتعلق بحسابات الوقت اللازم لتصنيف وترتيب المدخلات كاملة، تصنيف الكومة لا يضيع الوقت كالتصنيف الانتقائي، وهو جيد جدًا فيما يتعلق بالسرعة، فباستخدام تصنيف الكومة يمكننا ترتيب كافة المدخلات في زمن خطيّ، من خلال اختيار العنصر ذي القيمة الأعلى في كل مرة. رغم أن تصنيف الكومة قد يكون بطيئًا في مسائل معينة وعلى أجهزة معينة إذا ما قورن بالتصنيف السريع، فله حسنةً خاصةً به، وهي أن الزمن الأسوأ والأطول اللازم لحساب أية مسألة لا يمكن أن يتجاوز (ن لو ن) ( وبالإنجليزية: ( O(n log n). بالإصافة إلى ذلك، يعمل تصنيف الكومة بترتيب المدخلات دون الحاجة إلى مساحة تخزينية إضافية، فهو يوجد النتيجة المرجوة وتصنيفها في نفس المساحة التخزينية المحجوزة مسبقًا لتخزين المدخلات، لكن تصنيف الكومة لا يمكن اعتباره تصنيفًا ثابتًا. اكتشف العالم والرياضي ج. و. ج. ويليامز تصنيف الكومة في العام 1964. وفي نفس العام كان اختراع الكومة أو الكدسة كتعبير برمجي يستخدم لتخزين البيانات المختلفة وقام العالم ويليامز بتوظيف بنية المعطيات التي اخترعها من أجل تصنيف وترتيب البيانات وأظهر مدى أهمية هذه البنية. وكذلك في العام 1964، نشر العالم ر.و.فلويد نسخة معدّلة من هذا التصنيف مثبتًا أنه يمكنه ترتيب مصفوفة كاملة من البيانات دون الحاجة إلى مساحة تخزينية إضافية، ومكملًا بذلك بحثه عن الخوارزميات المستخدمة في التنصيف عند استعمال الشجر كبنية للتعبير عن المدخلات (بالإنجليزية: treesort). (ar)
  • L ' ordenament per apilaments ( heapsort en anglès) és un algorisme d'ordenament no recursiu, no estable, amb complexitat computacional . Aquest algorisme consisteix a emmagatzemar tots els elements del vector a ordenar en un apilament ( heap ), i després extreure el node que queda com node arrel de l'apilament (cim) en successives iteracions obtenint el conjunt ordenat. Basa el seu funcionament en una propietat dels apilaments, per la qual, el cim conté sempre el menor element (o el major, segons s'hagi definit l'apilament) de tots els emmagatzemats en ell. (ca)
  • Řazení haldou je jeden z nejlepších obecných algoritmů řazení, založených na porovnávání prvků. Byť je v průměru o něco pomalejší než dobře napsaný algoritmus rychlého řazení, je jeho zaručená časová náročnost . a dokáže řadit data na původním místě (má pouze konstantní nároky na paměť). Řazení haldou není stabilní řadicí algoritmus. (cs)
  • Heapsort („Haldensortierung“) ist ein in den 1960ern von Robert W. Floyd und entwickeltes Sortierverfahren. Seine Komplexität ist bei einem Array der Länge in der Landau-Notation ausgedrückt in und ist damit asymptotisch optimal für Sortieren per Vergleich. Heapsort arbeitet zwar in-place, ist jedoch nicht stabil. Der Heapsort-Algorithmus verwendet einen binären Heap als zentrale Datenstruktur. Heapsort kann als eine Verbesserung von Selectionsort verstanden werden und ist mit Treesort verwandt. (de)
  • In computer science, heapsort is a comparison-based sorting algorithm. Heapsort can be thought of as an improved selection sort: like selection sort, heapsort divides its input into a sorted and an unsorted region, and it iteratively shrinks the unsorted region by extracting the largest element from it and inserting it into the sorted region. Unlike selection sort, heapsort does not waste time with a linear-time scan of the unsorted region; rather, heap sort maintains the unsorted region in a heap data structure to more quickly find the largest element in each step. Although somewhat slower in practice on most machines than a well-implemented quicksort, it has the advantage of a more favorable worst-case O(n log n) runtime (and as such is used by Introsort as a fallback should it detect that quicksort is becoming degenerate). Heapsort is an in-place algorithm, but it is not a stable sort. Heapsort was invented by J. W. J. Williams in 1964. This was also the birth of the heap, presented already by Williams as a useful data structure in its own right. In the same year, Robert W. Floyd published an improved version that could sort an array in-place, continuing his earlier research into the treesort algorithm. (en)
  • El ordenamiento por montículos (heapsort en inglés) es un algoritmo de ordenamiento no recursivo, no estable, con complejidad computacional . Este algoritmo consiste en almacenar todos los elementos del vector a ordenar en un montículo (heap), y luego extraer el nodo que queda como nodo raíz del montículo (cima) en sucesivas iteraciones obteniendo el conjunto ordenado. Basa su funcionamiento en una propiedad de los montículos, por la cual, la cima contiene siempre el menor elemento (o el mayor, según se haya definido el montículo) de todos los almacenados en él. El algoritmo, después de cada extracción, recoloca en el nodo raíz o cima, la última hoja por la derecha del último nivel. Lo cual destruye la propiedad heap del árbol. Pero, a continuación realiza un proceso de "descenso" del número insertado de forma que se elige a cada movimiento el mayor de sus dos hijos, con el que se intercambia. Este intercambio, realizado sucesivamente "hunde" el nodo en el árbol restaurando la propiedad montículo del árbol y dejando paso a la siguiente extracción del nodo raíz. El algoritmo, en su implementación habitual, tiene dos fases. Primero una fase de construcción de un montículo a partir del conjunto de elementos de entrada, y después, una fase de extracción sucesiva de la cima del montículo. La implementación del almacén de datos en el heap, pese a ser conceptualmente un árbol, puede realizarse en un vector de forma fácil. Cada nodo tiene dos hijos y por tanto, un nodo situado en la posición i del vector, tendrá a sus hijos en las posiciones 2 x i, y 2 x i +1 suponiendo que el primer elemento del vector tiene un índice = 1. Es decir, la cima ocupa la posición inicial del vector y sus dos hijos la posición segunda y tercera, y así, sucesivamente. Por tanto, en la fase de ordenación, el intercambio ocurre entre el primer elemento del vector (la raíz o cima del árbol, que es el mayor elemento del mismo) y el último elemento del vector que es la hoja más a la derecha en el último nivel. El árbol pierde una hoja y por tanto reduce su tamaño en un elemento. El vector definitivo y ordenado, empieza a construirse por el final y termina por el principio. (es)
  • En informatique, le tri par tas est un algorithme de tri par comparaisons. Cet algorithme est de complexité asymptotiquement optimale, c'est-à-dire que l'on démontre qu'aucun algorithme de tri par comparaison ne peut avoir de complexité asymptotiquement meilleure. Sa complexité est proportionnelle à où est la longueur du tableau à trier. Le tri par tas se fait en place, c’est-à-dire qu’il ne nécessite pas l'allocation d'une zone mémoire supplémentaire (plus précisément il ne nécessite qu'une allocation d'une zone mémoire de taille ). Par contre, il n'est pas stable. Son inconvénient majeur est sa lenteur comparé au tri rapide (qui est en moyenne deux fois plus rapide[réf. nécessaire]) : sur un tableau de taille importante, il sera amené à traiter un nombre élevé d'emplacements mémoire dont l’éloignement peut dépasser la capacité du cache, ce qui ralentit l'accès à la mémoire et l’exécution de l’algorithme. (fr)
  • 힙 정렬(Heap sort)이란 최대 힙 트리나 최소 힙 트리를 구성해 정렬을 하는 방법으로서, 내림차순 정렬을 위해서는 최소 힙을 구성하고 오름차순 정렬을 위해서는 최대 힙을 구성하면 된다. 힙 정렬은 1964년 에 의해 발명되었다. 이 발명 연도는 윌리엄스가 유용한 자료 구조로서 이미 제시한 힙의 탄생일이기도 하다. 같은 해, R. W. 플로이드는 제자리 정렬을 할 수 있는 개선판을 출판하였으며 이는 윌리엄스의 초기 연구를 알고리즘으로 이어나가게 한 것이다. 최대 힙을 구성하여 정렬하는 방법은 아래 예와 같다. (ko)
  • ヒープソート (heap sort) とはリストの並べ替えを二分ヒープ木を用いて行うソートのアルゴリズムである(ヒープ領域とは無関係であることに注意する)。 アルゴリズムは、以下のように2つの段階から構成される。 1. * 未整列のリストから要素を取り出し、順にヒープに追加する。すべての要素を追加するまで繰り返し。 2. * ルート(最大値または最小値)を取り出し、整列済みリストに追加する。すべての要素を取り出すまで繰り返し。 計算量は O となる。安定ソートではない。 (ja)
  • L'heapsort è un algoritmo di ordinamento iterativo ed in-place proposto da Williams nel 1964, che si basa su strutture dati ausiliarie. L'heapsort, per eseguire l'ordinamento, utilizza una struttura chiamata heap; un heap è rappresentabile con un albero binario in cui tutti i nodi seguono una data proprietà, detta priorità. Esso è completo almeno fino al penultimo livello dell'albero (con le foglie sull'ultimo livello compattate a sinistra) e ad ogni nodo corrisponde uno ed un solo elemento. In uno heap decrescente (utilizzato per ordinare ad esempio un array in senso crescente) ogni nodo padre contiene un valore maggiore o uguale a quello dei suoi due figli diretti, di conseguenza risulterà maggiore anche di tutti i nodi che si trovano nel sottoalbero di cui esso è la radice; questo non implica affatto che nodi a profondità maggiore contengano valori minori di quelli a profondità minore. Quindi in ogni istante, in un heap decrescente, la radice contiene il valore maggiore. Questa struttura è molto usata, in particolare, per l'ordinamento di array. Per comprendere meglio il funzionamento dell'algoritmo è bene capire che gli elementi che si trovano nella seconda metà dell'array rappresenteranno foglie dello heap e quindi esse saranno già al loro posto giusto; non vi è infatti alcun elemento dopo di esse. (it)
  • Heapsort is een snel sorteeralgoritme, ontwikkeld in 1964 door Robert W. Floyd en J. W. J. Williams. Het probeert, net zoals straight selection sort, het grootste element van de te sorteren rij te zoeken, dit achteraan te plaatsen en zo met een minder verder te gaan tot alles op volgorde staat. Het algoritme is bijzonder efficiënt in geheugengebruik, maar is niet stabiel. (nl)
  • Heapsort är en instabil sorteringsalgoritm. Den sorterar n objekt med tidskomplexitet i värsta fall. Algoritmen kan ses som en förbättring av urvalssortering där datastrukturen heap utnyttjas för att snabbt kunna välja ut det största elementet i varje steg. (sv)
  • O algoritmo heapsort é um algoritmo de ordenação generalista, e faz parte da família de algoritmos de ordenação por seleção. Foi desenvolvido em 1964 por Robert W. Floyd e J.W.J Williams. (pt)
  • Sortowanie przez kopcowanie (ang. heapsort), zwane również sortowaniem stogowym – jeden z algorytmów sortowania, choć niestabilny, to jednak szybki i niepochłaniający wiele pamięci (złożoność czasowa wynosi a pamięciowa – przy czym jest to rozmiar sortowanych danych, złożoność pamięciowa dodatkowych struktur wynosi jest to zatem algorytm sortowania w miejscu). Jest on w praktyce z reguły nieco wolniejszy od sortowania szybkiego, lecz ma lepszą pesymistyczną złożoność czasową (przez co jest odporny np. na atak za pomocą celowo spreparowanych danych, które spowodowałyby jego znacznie wolniejsze działanie). (pl)
  • Пирамидальная сортировка (англ. Heapsort, «Сортировка кучей») — алгоритм сортировки, работающий в худшем, в среднем и в лучшем случае (то есть гарантированно) за операций при сортировке элементов. Количество применяемой служебной памяти не зависит от размера массива (то есть, ). Может рассматриваться как усовершенствованная сортировка пузырьком, в которой элемент всплывает (min-heap) / тонет (max-heap) по многим путям. (ru)
  • 堆排序(英語:Heapsort)是指利用堆這種数据結構所設計的一種排序算法。堆是一個近似完全二叉樹的結構,並同時滿足堆積的性質:即子節點的键值或索引總是小於(或者大於)它的父節點。 (zh)
  • Пірамідальне сортування (англ. Heapsort, «Сортування купою») — алгоритм сортування, працює гарантовано за Θ(n log n) операцій при сортуванні n елементів. Кількість застосовуваної службової пам'яті не залежить від розміру масиву (тобто, O(1)). (uk)
dbo:thumbnail
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 13995 (xsd:integer)
dbo:wikiPageLength
  • 44375 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1123622826 (xsd:integer)
dbo:wikiPageWikiLink
dbp:bestTime
  • or (en)
dbp:caption
  • A run of heapsort sorting an array of randomly permuted values. In the first stage of the algorithm the array elements are reordered to satisfy the heap property. Before the actual sorting takes place, the heap tree structure is shown briefly for illustration. (en)
dbp:class
dbp:data
dbp:date
  • 2015-03-06 (xsd:date)
dbp:space
  • total auxiliary (en)
dbp:title
  • Animated Sorting Algorithms: Heap Sort (en)
dbp:url
dbp:wikiPageUsesTemplate
dcterms:subject
rdf:type
rdfs:comment
  • L ' ordenament per apilaments ( heapsort en anglès) és un algorisme d'ordenament no recursiu, no estable, amb complexitat computacional . Aquest algorisme consisteix a emmagatzemar tots els elements del vector a ordenar en un apilament ( heap ), i després extreure el node que queda com node arrel de l'apilament (cim) en successives iteracions obtenint el conjunt ordenat. Basa el seu funcionament en una propietat dels apilaments, per la qual, el cim conté sempre el menor element (o el major, segons s'hagi definit l'apilament) de tots els emmagatzemats en ell. (ca)
  • Řazení haldou je jeden z nejlepších obecných algoritmů řazení, založených na porovnávání prvků. Byť je v průměru o něco pomalejší než dobře napsaný algoritmus rychlého řazení, je jeho zaručená časová náročnost . a dokáže řadit data na původním místě (má pouze konstantní nároky na paměť). Řazení haldou není stabilní řadicí algoritmus. (cs)
  • Heapsort („Haldensortierung“) ist ein in den 1960ern von Robert W. Floyd und entwickeltes Sortierverfahren. Seine Komplexität ist bei einem Array der Länge in der Landau-Notation ausgedrückt in und ist damit asymptotisch optimal für Sortieren per Vergleich. Heapsort arbeitet zwar in-place, ist jedoch nicht stabil. Der Heapsort-Algorithmus verwendet einen binären Heap als zentrale Datenstruktur. Heapsort kann als eine Verbesserung von Selectionsort verstanden werden und ist mit Treesort verwandt. (de)
  • 힙 정렬(Heap sort)이란 최대 힙 트리나 최소 힙 트리를 구성해 정렬을 하는 방법으로서, 내림차순 정렬을 위해서는 최소 힙을 구성하고 오름차순 정렬을 위해서는 최대 힙을 구성하면 된다. 힙 정렬은 1964년 에 의해 발명되었다. 이 발명 연도는 윌리엄스가 유용한 자료 구조로서 이미 제시한 힙의 탄생일이기도 하다. 같은 해, R. W. 플로이드는 제자리 정렬을 할 수 있는 개선판을 출판하였으며 이는 윌리엄스의 초기 연구를 알고리즘으로 이어나가게 한 것이다. 최대 힙을 구성하여 정렬하는 방법은 아래 예와 같다. (ko)
  • ヒープソート (heap sort) とはリストの並べ替えを二分ヒープ木を用いて行うソートのアルゴリズムである(ヒープ領域とは無関係であることに注意する)。 アルゴリズムは、以下のように2つの段階から構成される。 1. * 未整列のリストから要素を取り出し、順にヒープに追加する。すべての要素を追加するまで繰り返し。 2. * ルート(最大値または最小値)を取り出し、整列済みリストに追加する。すべての要素を取り出すまで繰り返し。 計算量は O となる。安定ソートではない。 (ja)
  • Heapsort is een snel sorteeralgoritme, ontwikkeld in 1964 door Robert W. Floyd en J. W. J. Williams. Het probeert, net zoals straight selection sort, het grootste element van de te sorteren rij te zoeken, dit achteraan te plaatsen en zo met een minder verder te gaan tot alles op volgorde staat. Het algoritme is bijzonder efficiënt in geheugengebruik, maar is niet stabiel. (nl)
  • Heapsort är en instabil sorteringsalgoritm. Den sorterar n objekt med tidskomplexitet i värsta fall. Algoritmen kan ses som en förbättring av urvalssortering där datastrukturen heap utnyttjas för att snabbt kunna välja ut det största elementet i varje steg. (sv)
  • O algoritmo heapsort é um algoritmo de ordenação generalista, e faz parte da família de algoritmos de ordenação por seleção. Foi desenvolvido em 1964 por Robert W. Floyd e J.W.J Williams. (pt)
  • Sortowanie przez kopcowanie (ang. heapsort), zwane również sortowaniem stogowym – jeden z algorytmów sortowania, choć niestabilny, to jednak szybki i niepochłaniający wiele pamięci (złożoność czasowa wynosi a pamięciowa – przy czym jest to rozmiar sortowanych danych, złożoność pamięciowa dodatkowych struktur wynosi jest to zatem algorytm sortowania w miejscu). Jest on w praktyce z reguły nieco wolniejszy od sortowania szybkiego, lecz ma lepszą pesymistyczną złożoność czasową (przez co jest odporny np. na atak za pomocą celowo spreparowanych danych, które spowodowałyby jego znacznie wolniejsze działanie). (pl)
  • Пирамидальная сортировка (англ. Heapsort, «Сортировка кучей») — алгоритм сортировки, работающий в худшем, в среднем и в лучшем случае (то есть гарантированно) за операций при сортировке элементов. Количество применяемой служебной памяти не зависит от размера массива (то есть, ). Может рассматриваться как усовершенствованная сортировка пузырьком, в которой элемент всплывает (min-heap) / тонет (max-heap) по многим путям. (ru)
  • 堆排序(英語:Heapsort)是指利用堆這種数据結構所設計的一種排序算法。堆是一個近似完全二叉樹的結構,並同時滿足堆積的性質:即子節點的键值或索引總是小於(或者大於)它的父節點。 (zh)
  • Пірамідальне сортування (англ. Heapsort, «Сортування купою») — алгоритм сортування, працює гарантовано за Θ(n log n) операцій при сортуванні n елементів. Кількість застосовуваної службової пам'яті не залежить від розміру масиву (тобто, O(1)). (uk)
  • تصنيف الكومة (بالإنجليزية: Heap sort)‏ في علم الحاسوب هو عبارة عن خوارزمية تصنيف تعتمد على المقارنات بين القيم المختلفة. يمكن اعتبار تصنيف الكومة بأنه نسخة معدّلة من التصنيف الانتقائي، إذ يقسم كل من التصنيفين المدخلات إلى قسمين، أحدهما مرتب والآخر غير مرتب، ويقلَّل حجم القسم غير المرتب بشكل دوري ومتتابع من خلال اختيار القيمة الأعلى من بين القيم غير المرتبة وموضعتها بطريقة صحيحة في القسم المرتب. يختلف تصنيف الكومة عن التصنيف الانتقائي من حيث الفعالية فيما يتعلق بحسابات الوقت اللازم لتصنيف وترتيب المدخلات كاملة، تصنيف الكومة لا يضيع الوقت كالتصنيف الانتقائي، وهو جيد جدًا فيما يتعلق بالسرعة، فباستخدام تصنيف الكومة يمكننا ترتيب كافة المدخلات في زمن خطيّ، من خلال اختيار العنصر ذي القيمة الأعلى في كل مرة. (ar)
  • In computer science, heapsort is a comparison-based sorting algorithm. Heapsort can be thought of as an improved selection sort: like selection sort, heapsort divides its input into a sorted and an unsorted region, and it iteratively shrinks the unsorted region by extracting the largest element from it and inserting it into the sorted region. Unlike selection sort, heapsort does not waste time with a linear-time scan of the unsorted region; rather, heap sort maintains the unsorted region in a heap data structure to more quickly find the largest element in each step. (en)
  • En informatique, le tri par tas est un algorithme de tri par comparaisons. Cet algorithme est de complexité asymptotiquement optimale, c'est-à-dire que l'on démontre qu'aucun algorithme de tri par comparaison ne peut avoir de complexité asymptotiquement meilleure. Sa complexité est proportionnelle à où est la longueur du tableau à trier. Le tri par tas se fait en place, c’est-à-dire qu’il ne nécessite pas l'allocation d'une zone mémoire supplémentaire (plus précisément il ne nécessite qu'une allocation d'une zone mémoire de taille ). Par contre, il n'est pas stable. (fr)
  • El ordenamiento por montículos (heapsort en inglés) es un algoritmo de ordenamiento no recursivo, no estable, con complejidad computacional . Este algoritmo consiste en almacenar todos los elementos del vector a ordenar en un montículo (heap), y luego extraer el nodo que queda como nodo raíz del montículo (cima) en sucesivas iteraciones obteniendo el conjunto ordenado. Basa su funcionamiento en una propiedad de los montículos, por la cual, la cima contiene siempre el menor elemento (o el mayor, según se haya definido el montículo) de todos los almacenados en él. El algoritmo, después de cada extracción, recoloca en el nodo raíz o cima, la última hoja por la derecha del último nivel. Lo cual destruye la propiedad heap del árbol. Pero, a continuación realiza un proceso de "descenso" del núme (es)
  • L'heapsort è un algoritmo di ordinamento iterativo ed in-place proposto da Williams nel 1964, che si basa su strutture dati ausiliarie. L'heapsort, per eseguire l'ordinamento, utilizza una struttura chiamata heap; un heap è rappresentabile con un albero binario in cui tutti i nodi seguono una data proprietà, detta priorità. Esso è completo almeno fino al penultimo livello dell'albero (con le foglie sull'ultimo livello compattate a sinistra) e ad ogni nodo corrisponde uno ed un solo elemento. Quindi in ogni istante, in un heap decrescente, la radice contiene il valore maggiore. (it)
rdfs:label
  • تصنيف الكومة (ar)
  • Heapsort (ca)
  • Řazení haldou (cs)
  • Heapsort (de)
  • Heapsort (es)
  • Tri par tas (fr)
  • Heapsort (en)
  • Heapsort (it)
  • ヒープソート (ja)
  • 힙 정렬 (ko)
  • Heapsort (nl)
  • Sortowanie przez kopcowanie (pl)
  • Heapsort (pt)
  • Пирамидальная сортировка (ru)
  • Heapsort (sv)
  • 堆排序 (zh)
  • Пірамідальне сортування (uk)
owl:sameAs
prov:wasDerivedFrom
foaf:depiction
foaf:isPrimaryTopicOf
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is owl:differentFrom of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License