Skip to ContentGo to accessibility pageKeyboard shortcuts menu
OpenStax Logo

Conceptual Questions

1 .
Explain the difference between algorithms and programs.
2 .
Explain the difference between data structures and abstract data types.
3 .
Explain the relationship between data representation, data structures, and algorithms.
4 .
What is the relationship between search algorithms and the searching problem?
5 .
What is the relationship between search algorithms and the autocomplete feature?
6 .
Why is algorithmic correctness difficult to determine?
7 .
What are some limitations of experimental analysis?
8 .
What are some benefits of experimental analysis over asymptotic analysis?
9 .
Why is a 1-element list the best-case situation for sequential search?
10 .
If phone numbers are ten digits long and can contain digits from zero through nine, what is the total number of potential phone numbers?
11 .
Why might we prefer a sub-optimal greedy algorithm over a correct brute-force algorithm?
12 .
What’s problematic about the statement, "municipal broadband planning reduces to Kruskal’s algorithm"?
13 .
Describe the relationship between the pivot element and the left and right sublists after the first partition in quicksort.
14 .
The runtime of Kruskal’s algorithm is in O(|E| log |E|) with respect to |E|, the number of edges. What primarily contributes to this linearithmic order of growth?
15 .
Both Prim’s algorithm and Dijkstra’s algorithm are greedy algorithms that organize vertices in a priority queue data structure. What is the difference between the ordering of vertices in the priority queue for Prim’s algorithm and Dijkstra’s algorithm?
16 .
What is the relationship between models of computation and algorithms?
17 .
What is the common difficulty preventing us from designing an efficient algorithm for solving NP-complete problems?
18 .
What are the consequences of P = NP?
Citation/Attribution

This book may not be used in the training of large language models or otherwise be ingested into large language models or generative AI offerings without OpenStax's permission.

Want to cite, share, or modify this book? This book uses the Creative Commons Attribution License and you must attribute OpenStax.

Attribution information
  • If you are redistributing all or part of this book in a print format, then you must include on every physical page the following attribution:
    Access for free at https://openstax.org/books/introduction-computer-science/pages/1-introduction
  • If you are redistributing all or part of this book in a digital format, then you must include on every digital page view the following attribution:
    Access for free at https://openstax.org/books/introduction-computer-science/pages/1-introduction
Citation information

© Oct 29, 2024 OpenStax. Textbook content produced by OpenStax is licensed under a Creative Commons Attribution License . The OpenStax name, OpenStax logo, OpenStax book covers, OpenStax CNX name, and OpenStax CNX logo are not subject to the Creative Commons license and may not be reproduced without the prior and express written consent of Rice University.