Stack (abstract data type)

Stack (abstract data type)

A stack is an abstract data type that serves as a collection of elements with two main operations: push and pop. Push adds an element to the top of the stack, while pop removes the last element added. It follows the LIFO (last in, first out) principle, making it useful for depth-first search implementation. It can also have a bounded capacity, resulting in a stack overflow if full.

8 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 107A: Problem-solving Lab for CS 107

Stanford University

Autumn 2022

This supplementary section provides extra support for CS 107 students. It offers an opportunity to review and practice course material in a small group setting, boosting understanding of CS 107 content. It uses a Satisfactory/No Credit grading scheme and is based on effort and participation.

No concepts data

+ 13 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 131: Fundamentals of Computer Systems

Brown University

Spring 2020

This course delves deep into the foundational principles behind computer systems, ranging from hardware intricacies to the vast global internet. Students gain insights into systems programming, the architecture of computer systems, concurrency, and the dynamics of distributed systems. Notably, the curriculum includes projects that offer hands-on experience, like building library functions, creating a toy OS, and designing a scalable key-value storage service. It's a stepping stone to advanced courses like Distributed Systems, Databases, and Computer Systems Security.

No concepts data

+ 35 more concepts

CS 107 Computer Organization & Systems

Stanford University

Autumn 2022

This Stanford University course delves into the depths of computer systems and programming. It continues from the introductory sequence, expanding students' programming experience using the C language, exploring machine-level code, computer arithmetic, memory management, and more.

No concepts data

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

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