K-means is an unsupervised clustering algorithm that assigns data points into clusters by minimizing within-cluster variance.
It follows an iterative approach very similar to the Expectation-Maximisation (EM) technique.
First, it assigns points to clusters (Expectation step) and then updates cluster centroids (Maximisation step).
This repeats until the clusters stabilize.
Gradient Descent is used in optimization for continuous functions, not directly for clustering.
Decision Trees and Support Vector Machines are separate supervised algorithms for classification and regression.
Hence, K-means uses an approach based on Expectation-Maximisation.