SQL Server uses something called the "Query Optimizer" to find the data you're looking for. To do that, there is another mechanism, called "Statistics", which can be created and maintained on columns in a table - even tables that don't have an Index.
You can read more about Statistics here, and in general they are a very good thing for performance. You could try to figure out which columns need statistics, but it's often better to let SQL Server do that for you. You can turn on the AUTO_CREATE_STATISTICS database option and SQL Server will automatically determine when it needs the Statistics and create them for you.
But just like Indexes, Statistics need to be maintained. You have a couple of options here. First, you can update the statistics manually with a Transact-SQL command, and second, you can set the AUTO_UPDATE_STATISTICS option. For the most part, the second option is best. If you do see lots of activity with either of these options and it begins to bog down the system (pretty rare, in my experience), you can perform these two tasks manually on a condition or a schedule. For me, the benefit of the increase in reads outweighs the cost of having them on automatically.