{
  "title": "CS 315: Data Structures and Algorithms (Fall 2025)",
  "desc": "This book covers Recursion, Sorting, Algorithm Analysis, Lists, Stacks, Queues, Binary Search Trees, Hash Tables, Heaps, and Graphs for CS 315: Data Structures and Algorithms at Embry-Riddle Aeronautical University",
  "build_dir": "Books",
  "code_dir": "SourceCode/",
  "lang": "en",
  "theme": "",
  "html_theme_options": null,
  "html_js_files": null,
  "html_css_files": null,
  "chapter_name": "",
  "code_lang": {
    "Java": {
      "ext": [
        "java"
      ],
      "label": "Java",
      "lang": "java"
    },
    "Java_Generic": {
      "ext": [
        "java"
      ],
      "label": "Java (Generic)",
      "lang": "java"
    },
    "Pseudo": {
      "ext": [
        "txt"
      ],
      "label": "Pseudo Code",
      "lang": "pseudo"
    }
  },
  "build_JSAV": false,
  "build_cmap": false,
  "suppress_todo": true,
  "dispModComp": true,
  "zeropt_assignments": false,
  "include_tree_view": false,
  "tabbed_codeinc": true,
  "narration_enabled": true,
  "glob_exer_options": {
    "JXOP-debug": "true"
  },
  "glob_ss_options": {
    "required": false,
    "points": 0,
    "threshold": 1
  },
  "glob_ka_options": {
    "required": true,
    "points": 1,
    "threshold": 5
  },
  "glob_pe_options": {
    "required": true,
    "points": 1,
    "threshold": 1
  },
  "glob_ff_options": {
    "required": false,
    "points": 0,
    "threshold": 1
  },
  "glob_extr_options": {
    "points": 1,
    "code-workout": {
      "points": 1
    },
    "code-workout-jhavepop": {
      "points": 1
    },
    "mastery-grid-java-animations": {
      "points": 1
    },
    "mastery-grid-jsparsons-python": {
      "points": 1
    },
    "mastery-grid-python-animations": {
      "points": 1
    }
  },
  "max_toc_depth": {
    "points": 3
  },
  "chapters": {
    "Preface": {
      "Intro": {}
    },
    "Introduction": {
      "Design/ADT": {},
      "Design/IntroOO": {},
      "PointersJava/BasicPointers1": {},
      "PointersJava/BasicPointers2": {},
      "PointersJava/Syntax": {},
      "PointersJava/LocalMem": {},
      "PointersJava/HeapMem": {}
    },
    "Lists": {
      "List/ListIntro": {},
      "List/ListADT": {},
      "List/ListArray": {},
      "List/ListLinked": {},
      "List/ListAnalysis": {},
      "List/ListDouble": {},
      "List/ListElement": {}
    },
    "Stacks and Queues": {
      "List/StackArray": {},
      "List/StackLinked": {},
      "List/Queue": {},
      "List/QueueLinked": {}
    },
    "Recursion": {
      "RecurTutor/RecIntro": {},
      "RecurTutor/Write": {},
      "RecurTutor/CodeCompletionEx": {},
      "RecurTutor/HarderCodeCompletionEx": {},
      "RecurTutor/WritingEx": {},
      "RecurTutor/Trace": {},
      "RecurTutor/TracingEx": {}
    },
    "Introductory Sorting": {
      "Sorting/SortNotation": {},
      "Sorting/InsertionSort": {},
      "Sorting/SelectionSort": {},
      "Sorting/BubbleSort": {},
      "Sorting/ExchangeSort": {}
    },
    "Hash Tables": {
      "Hashing/HashIntro": {},
      "Hashing/HashFunc": {},
      "Hashing/HashFuncExamp": {},
      "Hashing/OpenHash": {},
      "Hashing/BucketHash": {},
      "Hashing/HashCSimple": {},
      "Hashing/HashDel": {}
    },
    "Advanced Sorting": {
      "Sorting/Mergesort": {},
      "Sorting/MergesortImpl": {},
      "Sorting/Quicksort": {}
    },
    "Algorithm Complexity": {
      "AlgAnal/AnalChap": {},
      "AlgAnal/AnalPrelim": {},
      "AlgAnal/AnalIntro": {},
      "AlgAnal/AnalCases": {},
      "AlgAnal/AnalCompvsAlg": {},
      "AlgAnal/AnalAsymptotic": {},
      "AlgAnal/AnalLower": {},
      "AlgAnal/AnalProgram": {},
      "AlgAnal/AnalProblem": {},
      "AlgAnal/AnalMisunderstanding": {},
      "AlgAnal/AnalMultiple": {},
      "AlgAnal/AnalSpace": {}
    },
    "Binary Search Trees": {
      "Binary/BinaryTreeIntro": {},
      "Binary/BinaryTree": {},
      "Binary/RecursiveDS": {},
      "Binary/BinaryTreeTraversal": {},
      "Binary/WritingTraversals": {},
      "BTRecurTutor/BinaryTreeInfFlw": {},
      "Binary/BST": {},
      "Design/Dictionary": {},
      "Binary/BSTDict": {}
    },
    "Heaps": {
      "Binary/Heaps": {},
      "Sorting/Heapsort": {}
    },
    "Graphs": {
      "Graph/GraphIntro": {},
      "Graph/GraphImpl": {},
      "Graph/GraphTraversal": {},
      "Graph/GraphShortest": {},
      "Graph/Floyd": {},
      "Graph/MCST": {}
    },
    "Appendix": {
      "Glossary": {},
      "Bibliography": {},
      "Tutorials/cmdline": {},
      "Tutorials/2114_java_commenting": {},
      "Tutorials/debugmethods": {},
      "Tutorials/debug": {},
      "Background/Logarithms": {},
      "Background/Summations": {}
    }
  }
}
