This repository contains my solution code for two courses offered by Princeton University on Coursera.
- Part 1: Computer Science: Programming with a Purpose
- Part 2: Computer Science: Algorithms, Theory, and Machines
Each week directory contains solutions to:
- Book Exercises + Creative Exercises
- Web Exercises
- Weekly Assignments
NOTE: (Exercises.txt file contain verbal answers to none-code questions)
Course companion book and website -> Book, Website
Part 1: Computer Science: Programming with a Purpose - Grades
- Week 1
- 1.1 Your First Program
- 1.2 Built-in Types of Data
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - hello.zip 100/100
- Week 2
- 1.3 Conditionals and Loops
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - loops.zip 100/100
- 1.3 Conditionals and Loops
- Week 3
- 1.4 Arrays
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - arrays.zip 100/100
- 1.4 Arrays
- Week 4 (NOTE: from now on use external stdlib.jar or algs4.jar)
- 1.5 Input and Output
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - io.zip 100/100
- 1.6 Case Study: Random Web Surfer
- 1.5 Input and Output
- Week 5 (Note: from now on libraries defined in ToolKit package)
- ToolKit
- 2.1 Defining Functions
- Exercises
- Creative Exercises
- Web Exercises
- 2.2 Libraries and Clients
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - functions.zip 99/100
- Week 6
- 2.3 Recursion
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - recursion.zip 83/100
- 2.3 Recursion
- Week 7
- 4.1 Performance (Analysis of Algorithms)
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - performance.zip 100/100
- 4.1 Performance (Analysis of Algorithms)
- Week 8
- 3.1 Using Data Types (ADT)
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - oop1.zip 100/100
- 3.1 Using Data Types (ADT)
- Week 9
- 3.2 Creating Data Types
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - oop2.zip 100/100
- 3.2 Creating Data Types
- Week 10
- 3.3 Designing Data Types
- Exercises
- Creative Exercises
- Web Exercises
- Weekly Assignment - barchart.zip 100/100
- 3.3 Designing Data Types
1.3 Conditionals and Loops
Web - https://introcs.cs.princeton.edu/java/13flow/
21 - Number-to-English.
24 - Decimal expansion of rational numbers (Floyd's Cycle Detection algorithm).
36 - Thue–Morse sequence.
52 - Print a heart.
1.3 Conditionals and Loops
- (book) 39, 43, 45
- (web) 2, 3, 4, 15, 19, 21, 47, 53, 55, 56, 57, 59-84
1.4 Arrays
- (book) 1.4.12, 16, 20-41
- (web) TODO
1.5 Input and Output
- (book) 1.5.8, 13, 19-21, 24, 27-28, 30-37
- (web) TODO
2.1 Defining Functions
- (book) 2.1.15, 24, 29-36
- (web) in-progress
2.2 Libraries and Clients
- (book) 2.2.3-5, 7-28
- (web) TODO
2.3 Recursion
- (book) 2.3.9, 11-13,
- (web) TODO
4.1 Performance
- (book) 4.1.5-6, 11-27
- (web) TODO
3.1 Using Data Types (ADT)
- (book) 3.1.7-8, 23-24, 26
- (web) TODO
3.2 Creating Data Types
- (book)
- (web) TODO
3.3 Designing Data Types
- (book)
- (web) TODO