🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (178K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
1. Introduction
A stack is a linear data structure that operates under the Last In First Out (LIFO) principle. In simple terms, the most recent item you add (or "push") to the stack becomes the first one you take out (or "pop"). In this guide, we'll implement basic stack operations using R.
2. Program Overview
R doesn't natively support the stack data structure. However, we can emulate this behavior using lists. We will build functions for:
1. Pushing an item onto the stack
2. Popping an item off the stack
3. Peeking at the top item without popping it
3. Code Program
# Initializing an empty stack
stack <- list()
# Push function
push <- function(item) {
stack <<- append(stack, item)
}
# Pop function
pop <- function() {
if(length(stack) > 0) {
top <- stack[length(stack)]
stack <<- stack[-length(stack)]
return(top)
} else {
return(NULL)
}
}
# Peek function
peek <- function() {
if(length(stack) > 0) {
return(stack[length(stack)])
} else {
return(NULL)
}
}
# Testing the stack operations
push(5)
push(10)
push(15)
print(peek())
print(pop())
print(peek())
Output:
[1] 15 [1] 15 [1] 10
4. Step By Step Explanation
- We begin by initializing an empty list named "stack".
- The "push" function appends an item to the end of our list, simulating pushing onto the stack.
- The "pop" function retrieves the last item from the list, simulating popping off the stack, and then removes it from the list.
- The "peek" function just retrieves the last item without removing it, giving a view of the top of the stack.
- In our test, we pushed three numbers onto our stack (5, 10, and 15). When we peeked the first time, 15 was at the top.
After popping, 15 were removed, leaving 10 at the top of the stack, as seen in the final output.
My Top and Bestseller Udemy Courses. The sale is going on with a 70 - 80% discount. The discount coupon has been added to each course below:
Build REST APIs with Spring Boot 4, Spring Security 7, and JWT
[NEW] Learn Apache Maven with IntelliJ IDEA and Java 25
ChatGPT + Generative AI + Prompt Engineering for Beginners
Spring 7 and Spring Boot 4 for Beginners (Includes 8 Projects)
Available in Udemy for Business
Building Real-Time REST APIs with Spring Boot - Blog App
Available in Udemy for Business
Building Microservices with Spring Boot and Spring Cloud
Available in Udemy for Business
Java Full-Stack Developer Course with Spring Boot and React JS
Available in Udemy for Business
Build 5 Spring Boot Projects with Java: Line-by-Line Coding
Testing Spring Boot Application with JUnit and Mockito
Available in Udemy for Business
Spring Boot Thymeleaf Real-Time Web Application - Blog App
Available in Udemy for Business
Master Spring Data JPA with Hibernate
Available in Udemy for Business
Spring Boot + Apache Kafka Course - The Practical Guide
Available in Udemy for Business
Comments
Post a Comment
Leave Comment