Hashing

Hash function

A hash function is a function used to map data of arbitrary size to fixed-size values. These values are used to index a hash table, which is used for efficient data storage and retrieval. Hash functions rely on statistical properties of key and function interaction to achieve nearly optimal performance. They are related to other concepts such as checksums and ciphers.

10 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

CSE 331 Software Design & Implementation

University of Washington

Spring 2022

This course aims to improve students' software development skills, focusing on building correct, scalable, and easy-to-understand software. It relies on a solid understanding of Java and the concepts covered in CSE 143. Students will learn about software design principles, modern programming languages, and software tools. It covers software testing, type systems, design patterns, and more.

No concepts data

+ 28 more concepts

15-415/615 Database Applications

Carnegie Mellon University

Fall 2016

This course introduces databases, data models, SQL, database design, query optimization, indexing, and transaction management. It aims to impart understanding of when and how to use database management systems. The course is heavily based on the textbook "Database Management Systems" by Raghu Ramakrishnan and Johannes Gehrke.

No concepts data

+ 20 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

15-451/651 Algorithms

Carnegie Mellon University

Spring 2022

This course explores the design and analysis of algorithms, algorithmic modelling techniques, and their efficiency. It aims to provide tools for designing and analyzing personal algorithms, using various analytical tools and frameworks. Some advanced topics not commonly covered in textbooks are also taught.

No concepts data

+ 37 more concepts

CS 106B Programming Abstractions

Stanford University

Winter 2023

This course helps transition from coding to problem-solving using computers. The course explores techniques, tools, and models for problem-solving across disciplines using C++. Prior programming experience is assumed.

No concepts data

+ 33 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

CSCI 0150: Introduction to Object-Oriented Programming and Computer Science

Brown University

Fall 2022

CS0150 introduces Computer Science via object-oriented design and programming using Java and JavaFX for creating interactive programs with GUIs. Concepts like data structures, algorithms, and computational efficiency are explored. Practical exercises include engaging programming assignments like Doodle Jump and Tetris. The course is designed for all, requiring no prior knowledge.

No concepts data

+ 19 more concepts

CSCI 1550/2450 Probabilistic Methods in Computer Science

Brown University

Spring 2022

This analytical course dives into the mathematical underpinnings of computing successes like machine learning and cryptography, emphasizing the role of probability, randomness, and statistics. Students will explore mathematical models, theorems, and proofs. Practical implementations are not covered, focusing instead on the theories driving computational probabilities.

No concepts data

+ 10 more concepts