VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > 简明python教程 >
  • 一步一步剖析Dictionary实现原理(2)

void Foo() { ...... //移除 new List<int> { 22, 29 }.ForEach(item => dicData.Remove(item)); }
复制代码

4.1 移除Key=22后,freeList = 3, freeCount = 1,

 4.2 移除Key=36后,freeList = 5, freeCount = 2, 

 5. 再插入键值

如上图,当移除掉{36,36}后,会发现又诞生一个含有两个元素的“新链表”(上图灰色框)。这个作用就是为了插入新键值时,按照“新链表”记录的索引顺序插入到entries数组中。
例:添加键值{22,22},{25,25},此时freeList = 5,freeCount = 2;
  1. 给entries[5]赋值,freeList = 3, freeCount = 1;
  2. 给entries[3]赋值,freeList = -1, freeCount = 0;

 希望此文能够让你对于Dictionary内部实现有所认识。


相关教程
          
关于我们--广告服务--免责声明--本站帮助-友情链接--版权声明--联系我们       黑ICP备07002182号