·         Control statements: Units #1, #2 and #3 : 8 problems

 

 

 

·         Arrays (one-dimensional): Units #4 and #5 : 7 problems

 

 

 

·       Arrays (two-dimensional): Unit #10: 3 problems

 

 

 

 

·       Text Processing in Java - String and StringBuilder APIs:  Unit #6: 11 problems

 

 

·       Classes and Objects in Java: Unit #7: 2 problems

 

 

·         Design of Algorithms:

 

o   Arrays – Part I

 

o   Arrays – Part II

 

o   Strings

 

 

·         Numerical Simulation:

 

·       Estimating Pi

 

·       Computing Integrals

 

·       Computing Correlation Coefficients

 

 

·       Data Structures:

 

o    Linked List:

 

a)    Building a singly linked list

 

b)   Insertion and Deletion (at both ends of the list)

 

c)     Assigned Problems

 

o   Binary Search Tree:

 

a)    Building a Binary Search Tree (BST)

 

b)   BST Methods #1

 

c)     BST Methods #2

 

d)   Assigned Problems #1

 

e)    Assigned Problems #2

 

 

 

·        Algorithms: Searching and Sorting 

 

·        Huffman Compression Algorithm

 

 

·       Design of Algorithms:

 

a)    Arrays: Union and Intersection – A Faster Algorithm

 

 

·       Introduction to Machine Learning:

·       Apriori Algorithm

·       K-Means Clustering Algorithm

·       K-nearest Neighbors Algorithm

·       Genetic Algorithms: A Simple Exercise

·       Reinforcement Learning: The Match Sticks game

·       Bayesian Email Spam Filter

 

 

·       Cryptography:

 

a)    Example Program: BigInteger API

 

b)   Symmetric Key Encryption

 

c)     Diffie Hellman Key Exchange Algorithm

 

d)   RSA Algorithm