Chandan Sharma based on what you explained you should used distribution based clustering such as Gaussian mixture model or Bayesian mixture model.
Today, K-means is used very informally without understanding its assumptions. When you fail to meet them, then their performance reduces. Also, there are various k-means algorithms such as "Hartigan-Wong", "Lloyd", "Forgy", and "MacQueen". Lloyd is the most famous one.