Undecidable and Decidable Problems
Popcorn Hack #1
False Undecidable problems can’t be fully solved by any algorithm so the computer wont be able to solve it.
Popcorn Hack #2
True Programmers can still use code that works most of the time, even if it doesn’t solve every case and it can still be highly accurate.
Popcorn Hack #3
D, Bubble sorting Bubble sorting is a simple algorithm that always works and ends so it will work.
Homework Hack
When a program or website gets stuck in an endless loop or takes way too long to run something, modern operating systems like Windows or macOS and browsers like Chrome or Firefox have ways to deal with it. The OS might show a “Not Responding” message and let you force quit the program using Task Manager or something similar. Browsers usually watch for scripts that run too long and pop up a warning like “A script on this page is not responding” and give you the option to stop it or keep waiting. They also use tricks like sandboxing (keeping things separate) and watchdogs (little checkers that look out for problems) to make sure one bad tab or app doesn’t mess everything up. It’s all about keeping your computer or phone running smooth, so if something goes wrong, you can close it without crashing everything else.
Graphs & Heuristics
Popcorn Hack #1
False In a directed graph, edges have direction, so an edge from A to B does not mean there is one from B to A since it will only have one direction.
Popcorn Hack #2
True Heuristics usually have faster solutions than exact algorithms, but they might not always give the best solution and can have less accuracy.
Popcorn Hack #3
True Heuristics finds solutions that are good enough, but they do not guarantee an optimal solution and can give worse results as the number of cities grows.
Homework Hack
Social Network Analysis (SNA) is basically a way to understand how people connect, interact, and share stuff online. It’s like looking at social media through a map where each person is a dot (node), and every friendship, follow, message, or like is a line (edge) that connects two people. These graphs can get really big and complex, especially with millions of users. But once you lay everything out in a network graph, you can start to see some cool patterns and insights that are hard to spot just by looking at data tables or lists.
One of the best real-world examples of this is Facebook. Facebook built something called the “social graph,” which is the massive network of all its users and their connections. They use it for things like recommending friends (if two people have a bunch of mutual connections), showing you more relevant content (posts that your closest connections liked), or finding out what communities you’re part of. Another example is LinkedIn, where they use your connection graph to recommend jobs, people you may know, or even how closely you’re connected to someone (like 1st, 2nd, or 3rd degree connections).