Non-Clustered Index does not physically order the data pages in the disk so the memory required for creating a non-clustered Index is very less. The SQL Server maintains the indeces as B-Trees. In a clustered index, the leaf contains the actual data pages of the table and the data is physically stored in the logical order of the index.
A nonclustered index is analogous to an index in a textbook. The data is stored in one place, the index in another, with pointers to the storage location of the data. The items in the index are stored in the order of the index key values, but the information in the table is stored in a different order (which can be dictated by a clustered index). If no clustered index is created on the table, the rows are not guaranteed to be in any particular order.
You can get more information from this link.
http://msdn.microsoft.com/library/de...es_02_2248.asp
Clustered Indeces are suitable in the following cases
Columns used in range queries
Columns used in order by or group by queries
Columns used in table joins
Queries returning large result sets
Non-Clustered Indeces are suitable in the following cases
Columns used in aggregate functions
Foreign keys
Queries returning small result sets.l
Regards
Ganesh