Sorting an array of clones by their position and compare them

how to compare the positions of the clones of two array list…??i tried this snippet but it didn’t work for me.gems is the arraylist in which positions of clones get shuffle and gems1 donot get shuffle only instantiate with the gems in the starting before shuffling the positions of the clones in the gems list.

public List<Gem> gems = new List<Gem>();
	public List<Gem> gems1 = new List<Gem>();

   public void WinOrLose( )
	{  
		gems1  = gems.OrderBy(ge => ge.transform.position.x);

		for(int i=0;i<gems.Count;i++){
			//for(int j=0;j<gems1.Count;j++){
				if (gems_.transform.position!=gems1*.transform.position)*_ 

* {*
_ print (gems*.transform.position);
print (gems1.transform.position);
}
else{
print (“matched”);*_

* }*
* }//}*
* }*

Try to compare positions x,y properties.Some thing like that:

if (gems_.transform.position.x!=gems1*.transform.position.x*_

||gems_.transform.position.y!=gems1*.transform.position.y)
{_

_print (gems.transform.position);_
_print (gems1.transform.position);
}*

else{
print (“matched”);_

}