using System; using System.Collections.Generic; using TheGameExtreme.model.card; namespace TheGameExtreme.model.deck { public abstract class Deck { protected List deck = new List(); public int size() { return deck.Count; } public void removeAt(int index) { deck.RemoveAt(index); } public Card getCard(int index) { return deck[index]; } protected void InsertionDichotomique(List deck, int start, int end, Card card) { int mediane = (end - start) % 2 + start; if (mediane > deck.Count - 1) { deck.Add(card); return; } int comparateur = deck[mediane].Value.CompareTo(card.Value); if (mediane == end) { if (comparateur > 0) { deck.Insert(start, card); } else { deck.Insert(end, card); } return; } if (comparateur == 0) { return; } else if (comparateur > 0) { InsertionDichotomique(deck, start, mediane, card); return; } else { InsertionDichotomique(deck, mediane, end, card); return; } } } }