This document discusses algorithms for analyzing social networks and detecting communities within them. It describes several algorithms for community detection, including minimum-cut methods, hierarchical clustering, Girvan-Newman algorithms, modularity maximization techniques like the Louvain method, statistical inference methods, and clique-based methods. It also covers algorithms for community search to efficiently find the community containing a given query node.