В чём отличие хэш-таблицы от словаря и ассоциативного массива в C#?
Всем добрый день, не совсем понятно отличие между ассоциативным массивом, хэш-таблицей(hashtable) и словарём(dictionary/map) и как это проявляется в языке c#. Как я понял, есть ADT - хэш-таблица которая представлена хэш-функцией и массивом - кормим ей ключ и значение => хэш-функция(над ключом) => индекс в массиве => операция над входными данными. Могут возникнуть коллизии которые решаются либо открытой адресацией(пробирование) либо связанным списком и вот тут встал вопрос - а чем это отличается от словаря и ассоциативного массива и как это проявляется в C#(отличие hashtable и dictonary?) Где-то говорят что словарь это та же хэш-функция в которой коллизии решаются через открытую адресацию, где-то что это(словарь) абстрактное нечто что должно уметь работать с парой ключ/значение и это может быть реализовано хоть через дерево. Во-общем, помогите пожалуйста разобраться. Заранее спасибо!
annaTomas, Hashtable это наследство от Net Framework 1.1. Он работает только с типом Object и требует проверки типов во время выполнения при извлечении из него значений.