This repository contains my Java implementations of fundamental programming concepts covered in the Intermediate Programming class at De La Salle University Dasmarinas.
This course includes review of control structures and data types with emphasis on structured data types. Application of object-oriented programming paradigm, focusing on the definition and use of classes along with the fundamentals of object-oriented design is also part of the discussion as well as basic analysis of algorithms, searching and sorting techniques.
The lab activity/repository covers the following core topics:
- Review loops (
for
,while
,do-while
) and conditionals (if-else
,switch
). - Implement flow control for decision-making and repetition.
- Differentiate between primitive (
int
,char
) and non-primitive (arrays
,objects
) types. - Use data structures to organize and manipulate data.
- Read from and write to files using streams (
FileReader
,BufferedWriter
). - Handle exceptions and manage file resources.
- Create reusable code blocks with custom methods.
- Design classes to encapsulate data and behavior (OOP principles).
- Implement recursive solutions for problems like factorial or Fibonacci.
- Understand base cases and recursive calls to avoid stack overflow.
- Linear search: Iterate through elements sequentially.
- Binary search: Divide-and-conquer approach for sorted data.
- Bubble sort: Compare and swap adjacent elements.
- Selection sort: Select the smallest element and swap.
- Insertion sort: Build a sorted array one element at a time.
Category | Tools/Languages |
---|---|
Languages | Java |
Concepts | OOP, Algorithms, Data Structures |
Tools | IDE (Netbeans, IntelliJ, VS Code) |
Platform | SchoolBook (for course materials)) |
OOP Concepts: Classes, objects, inheritance, polymorphism, encapsulation.
Guide:
- 1 for Midterm Activities
- 2 for Final term Activities
- No.X, "X" represents activity for that term
# | Title | Lesson/Topic | Filename |
---|---|---|---|
2.4 | Intermediate Programming Finals Lab Summative 2024 | Final Summative | n/a |
2.3 | Empty | Sorting Algorithms | n/a |
2.2 | Empty | Searching Algorithms | n/a |
2.1 | Empty | User-Defined Classes | n/a |
1.7 | Intermediate Programming Midterms Lab Summative 2024 | Midterms Summative | n/a |
1.6 | Empty | Recursive Methods | n/a |
1.5 | Empty | User-Defined Methods | n/a |
1.4 | Empty | File Processing | n/a |
1.3 | Empty | Structured Data Types | n/a |
1.2 | Empty | Review of Control Structures and Data Types | n/a |
1.1 | Working with NetBeans IDE | Course Introduction | n/a |
Specific implementations and problem-solving techniques will be provided during the lab sessions. The midterm and final exams will assess your understanding of the concepts and your ability to apply them to solve problems.
- Review of control structures
- Data types and structures
- File processing
- User-defined methods
- Recursive methods
- User-defined classes
- Searching algorithms
- Sorting algorithms
- Advanced OOP concepts