Binary Search Tree (BST)

Binary search tree

Binary search trees are rooted binary tree data structures with keys that are greater than the keys in the left subtree and less than the keys in the right subtree. They allow for fast lookup, addition, and removal of data items, with an average complexity of O(log n). Self-balancing variants of BSTs have been introduced to bound the worst lookup complexity to that of the binary logarithm.

5 courses cover this concept

CSE 373 Data Structures and Algorithms

University of Washington

Summer 2022

This course focuses on common data structures and algorithms. It integrates theoretical understanding with practical exercises, preparing students for software-related roles and industry technical interviews. Programming projects, unit testing, and source control techniques are emphasized.

No concepts data

+ 27 more concepts

CS 161 Design and Analysis of Algorithms

Stanford University

Winter 2023

This course provides an in-depth exploration of algorithm analysis and design. It covers various sorting, searching, and selection algorithms, data structures, and fundamental graph algorithms. It emphasizes the understanding of worst and average case analysis, recurrences, and asymptotics.

No concepts data

+ 30 more concepts

CS 61B: Data Structures

UC Berkeley

Fall 2022

CS 61B focuses on software efficiency from design and runtime perspectives. It covers object-oriented programming with Java, teaching data structures and various programming concepts. The course promotes hands-on learning with optional assignments.

No concepts data

+ 55 more concepts

CSE 143 Computer Programming II

University of Washington

Summer 2022

This course is a continuation of CSE 142, focusing on manipulating data, implementing data structures, and learning about algorithms in Java. It delves into abstract data types, recursion, inheritance, and more.

No concepts data

+ 34 more concepts

COS 226 Algorithms and Data Structures

Princeton University

Spring 2023

This course surveys crucial algorithms and data structures used in modern computing, with emphasis on sorting, searching, graphs, and strings. It aims to develop implementations, understand their performance, and evaluate their effectiveness.

No concepts data

+ 25 more concepts