But I've seen articles with 0 comment and only 9 upvotes appear on the front page, while there are threads with more comments and upvotes not getting noticed.
The algorithm, crudely speaking, is based on upvotes and age. Nine upvotes in a short enough period of time will get a story to the #1 position; nine upvotes over many hours might not get a story on the front page at all (depending on the other stories.)
If you want to see the details, check out the Arc source code.