Selection algorithms

Introselect

In computer science, introselect (short for "introspective selection") is a selection algorithm that is a hybrid of quickselect and median of medians which has fast average performance and optimal worst-case performance. Introselect is related to the introsort sorting algorithm: these are analogous refinements of the basic quickselect and quicksort algorithms, in that they both start with the quick algorithm, which has good average performance and low overhead, but fall back to an optimal worst-case algorithm (with higher overhead) if the quick algorithm does not progress rapidly enough. Both algorithms were introduced by David Musser in, with the purpose of providing generic algorithms for the C++ Standard Library that have both fast average performance and optimal worst-case performance, thus allowing the performance requirements to be tightened. However, in most C++ Standard Library implementations, a different "introselect" algorithm is used, which combines quickselect and heapselect, and has a worst-case running time of O(n log n). The C++ draft standard, as of 2022, does not have requirements on the worst-case performance, therefore allowing such choice. (Wikipedia).

Video thumbnail

A1 The Appendix_Introduction

An introduction to what will be on discussion in this lecture series on the appendix.

From playlist Acute Care Surgery

Video thumbnail

How to draw an ellipse like a boss

via YouTube Capture

From playlist Random

Video thumbnail

NASA for Kids: Intro to Engineering

What is engineering, and who exactly is an engineer? Learn more in this video!

From playlist Teaching and Learning | Exploratorium

Video thumbnail

4_3 Intraabdominal Infections

In this lecture we look at how patients develops an intraabdominal infection, what puts them at risk, how we can prevent infections, as well has how to manage established infection. Lastly I discuss a variety of specific conditions.

From playlist Surgery Intermediate Exam Masterclass

Video thumbnail

Clojure - the Reader and Evaluator (4/4)

Part of a series teaching the Clojure language. For other programming topics, visit http://codeschool.org

From playlist the Clojure language

Video thumbnail

Clojure - the Reader and Evaluator (2/4)

Part of a series teaching the Clojure language. For other programming topics, visit http://codeschool.org

From playlist the Clojure language

Video thumbnail

Outtakes

Yes. I make mistakes ... rarely. http://www.flippingphysics.com

From playlist Miscellaneous

Video thumbnail

3_1 Introduction to Antibiotics

An introduction to the talks on the use of antibiotics in surgical practice.

From playlist Surgery Intermediate Exam Masterclass

Related pages

Median of medians | Heapsort | Floyd–Rivest algorithm | Hybrid algorithm | Sorting algorithm | Introsort | Quickselect | Selection algorithm | Quicksort