removing duplicates in list

I have a list of enemies compiled when they enter a trigger, but when they enter the trigger again it adds the same enemy into the list a second time. there must be a way to keep this from happening.

void OnTriggerEnter2D (Collider2D tripwire){
	if (tripwire.tag == "Enemy") {
		enemyList.Add (tripwire.gameObject);
	}
}

if (tripwire.CompareTag (“Enemy”) && !enemyList.Contains (tripwire.gameObject)) {
enemyList.Add (tripwire.gameObject);
}

Use a hash table, not a list.
Otherwise the Add and Contains method will take O(n) time versus taking O(1) time.