Java 18: Algorithms and data structures

Software Development

:
( 0 )
203 pages
Sprog:
 English
The book focuses on algorithms written in Java and presents several classic algorithms.
Dette er en gratis e-bog til studerende
Tilmeld dig for gratis adgang
Alle studiebøger gratis for evigt. Mindre end 15 % annoncer
 
Gratis 30 dages prøveperiode
Premium abonnement gratis i de første 30 dage, derefter $5.99/mnd
Seneste tilføjelse
Om forfatteren

Poul Klausen er uddannet cand. scient. i matematik fra Aarhus Universitet med speciale i algebraisk topologi. Efter universitetet og et efterfølgende pædagogikum har Poul Klausen primært arbejdet som underviser og det især inden for it uddannelser og gennem de sidste mange år som underviser på datamat...

Description
Content

The book focuses on algorithms written in Java and presents several classic algorithms, but the primary goal is to introduce algorithm analysis, and then allowing the reader to be able to compare and evaluate the complexity of algorithms. In addition, the book treats the classic data structures such as lists and trees and shows how these data structures can be implemented in Java.

Click here to download the source files from this book.

  • Foreword
  1. Introduction
  2. The concept of algorithms 
    1. Examples of algorithms 
    2. Exercise 1: A difference series 
    3. Recursion 
    4. Exercise 2: A palindrome 
    5. Search 
    6. The Fibonacci numbers 
    7. Euclid’s algorithm 
    8. Sum of digits 
    9. Prime numbers 
    10. Sweep 
    11. Exercise 3: Sweep a list 
  3. Algorithm analysis 
    1. The complexity of linear search 
    2. The complexity of binary search 
    3. More examples 
    4. Definition of complexities 
    5. Merge 
    6. Time complexity in practice 
    7. Exercise 4: Calculating primes 
    8. Memory complexity 
    9. The median 
    10. Exercise 5: Measurements for the median 
    11. Problem 1: Max contiguous sum 
    12. Correctness of algorithms 
  4. Sorting 
    1. Bubble sort 
    2. Selection sort 
    3. Insertion sort 
    4. Shell sort 
    5. Merge sort 
    6. Quick sort 
    7. Problem 2: The sorting methods
  5. Data structures 
    1. A Buffer
    2. Exercise 6: Test Buffer
    3. ArrayList 
    4. Exercise 7: Test ArrayList 
  6. Linked lists 
    1. Single linked lists 
    2. Exercise 8: Test SingleList 
    3. Double linked lists 
    4. Exercise 9: Test DoubleList 
    5. Problem 3: A circular list 
    6. An ordered linked lists 
    7. Exercise 10: Double linked lists
    8. A stack 
    9. Exercise 11: A stack of fixed size 
    10. A queue 
    11. Exercise 12: A priority queue 
  7. Trees 
    1. Binary trees 
    2. Exercise 13: A general binary tree 
    3. Binary search trees 
    4. Exercise 14: A binary search tree 
    5. Exercise 15: LevelOrder 
    6. Balanced binary trees 
    7. An AVL tree 
    8. Exercise 16: Test the AVLTree 
  8. Heap 
    1. Problem 4: A TreeHeap 
    2. The class Heap 
    3. Heap sort 
    4. A priority queue 
    5. Exercise 17: Test the class Heap 
    6. Problem 5: Radix-sort 
  9. Hashing 
    1. The class Hashing 
    2. Exercise 18: Test hashing 
    3. Problem 6: Quadratic probing 
  10. Sets 
    1. Exercise 19: The set classes 
  11. Maps 
    1. Exercise 20: The map classes
  12. A final example 
    1. A test program