SortedList 类代表了一系列按照键来排序的键/值对,这些键值对可以通过键和索引来访问。

排序列表是数组和哈希表的组合。它包含一个可使用键或索引访问各项的列表。如果您使用索引访问各项,则它是一个动态数组(ArrayList),如果您使用键访问各项,则它是一个哈希表(Hashtable)。集合中的各项总是按键值排序。

总结:用于坐标删除删除的是排序好的队列.跟删除数组差不多.

在项目两个列进行合并时可以使用这种方式,时间当键, 码当值,自动排序打印.但不能用sortedlist 因为键是唯一的,不能重复.

项目要做两个txt内容比对.比如 a  b 两个txt

本来有这么个设想,

读取a txt 文件 一条数据,开着文件流不关闭.

读取b txt文件内容,文件流开着,每次读取比如十个数.达到20数后清空前十个,保留后十个作为继续让a的数据比对,因为数据相同的位置相差不多.比如a文件有个值100,假如b文件也有这个100的话,那b文件的100这个值在这个文件中的位置跟A中100的位置差不多,项目是两个读码器同时读一条线的数据,作为相互补充,上道读码器和下道读码器中间隔着一米左右,最终所以想优化成这个效果.

使用soredlist 删除读取的btxt slist时,比如删除5个

用到

for (int i = 0; i < 5; i++)
{

//把即将删除的添加到另一个队列.作为即将保存的
differlist.Add(n_readlist.GetKey(i), n_readlist.GetByIndex(i));

//开始删除

n_readlist.RemoveAt(i);
}

1:错误1:上边这种方法是不适合这种项目需求的.

因为add之后,里边的值是按照序列排序了,位置变化了.所以本来想删除第一个加进来的,可能把别的值删除掉了

2:错误2: 上边的循环写法错误,因为每次删除之后,循序上移,原先的1位置的值移到了0位置.循环到第二次的时候删除的值实际是 最开始的第三个值,而第二个值被漏掉了.

如图:循环到第二次时, 实际要求删除第一个值.如图删除前

删除后第一个值还存在,第二个值没了.

而下边是字典dictionary 加入的数值之后的数据结构,两列中间用逗号隔开,起边多了一项排序数值,而且数据顺序没有变化.

关于sortedlist 中值的添加,删除,索引测试.的更多相关文章

  1. mysql添加删除索引,查看某个表的建表语句

    查看某个表的建表语句 :show create table data_statdata; drop index ts on data_statdata; 索引是加速查询的主要手段,特别对于涉及多个表的 ...

  2. Mysql使用Java UUID作为唯一值时使用前缀索引测试

    Mysql可以使用字符串前缀 作为索引 以节约空间. 下面我们以 Java的UUID 生成的 32位(移除UUID中的 中划线)字符串 来做一下 测试. 表结构: CREATE TABLE `test ...

  3. mysql建立索引 删除索引

    建立索引 1.添加PRIMARY KEY(主键索引) mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 2.添加UNIQUE ...

  4. 动态添加删除网卡 - 每天5分钟玩转 OpenStack(156)

    这是 OpenStack 实施经验分享系列的第 6 篇. 在项目实施过程中,经常会有添加删除网卡的需求.比如一个运行数据库的 instance,初始只有一个网卡,数据库服务和备份共用这块网卡,后来为提 ...

  5. jquery中找到元素在数组中位置,添加或者删除元素的新方法

    一:查找元素在数组中的位置 jQuery.inArray()函数用于在数组中搜索指定的值,并返回其索引值.如果数组中不存在该值,则返回 -1. jQuery.inArray( value, array ...

  6. MySQL 添加索引,删除索引及其用法

    一.索引的作用 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化显然是重中之重. 在数据 ...

  7. MySQL添加、删除索引

    1.索引类型 UNIQUE(唯一索引):不可以出现相同的值,可以有NULL值: INDEX(普通索引):允许出现相同的索引内容: PROMARY KEY(主键索引):不允许出现相同的值: fullte ...

  8. 分享知识-快乐自己:MySQL中的约束,添加约束,删除约束,以及一些其他修饰

    创建数据库: CREATE DATABASES 数据库名: 选择数据库: USE 数据库名: 删除数据库: DROP DATAVBASE 数据库名: 创建表: CREATE TABLE IF NOT ...

  9. phoenix中添加二级索引

    Phoenix创建Hbase二级索引 官方文档 1. 配置Hbase支持Phoenix创建二级索引   1.  添加如下配置到Hbase的Hregionserver节点的hbase-site.xml  ...

随机推荐

  1. 19.Observales

    然后 ng serve看看能不能启动 OK

  2. python批量操作Linux服务器脚本,ssh密码登录(执行命令、上传、下载)(一)

     -*-          paramiko.util.log_to_file(         ssh = paramiko.SSHClient()          ssh.set_missing ...

  3. beta分布 java代码

    public class BetaDistributionActivity { /** * @param alpha: eg. click * @param beta : eg. pv - click ...

  4. Generative Adversarial Networks,gan论文的畅想

    前天看完Generative Adversarial Networks的论文,不知道有什么用处,总想着机器生成的数据会有机器的局限性,所以百度看了一些别人 的看法和观点,可能我是机器学习小白吧,看完之 ...

  5. UVA11572-Unique Snowflakes-(最长不同连续子序列)

    题意:给n个数,求最长不同连续子序列.n<=1e6. 解题过程: 1.记录数据存于数组 2.用左右指针l和r指向这段连续区间 3.右指针往右走,如果遇到没有存在于set集合的数就插入集合 否则左 ...

  6. 安装 telnet

    yum install telnet-server yum install telnet service xinetd restart 查询是否正常启动telnet       netstat -tn ...

  7. rectangle,boundingRect和Rect

    rectangle( rook_image, Point( , *w/8.0 ), Point( w, w), Scalar( , , ), , ); 矩形将被画到图像 rook_image 上 矩形 ...

  8. Excel批量修改文件

    [1]把下图片放在一个文件目录下面,如E:\SVM_Class\airplanes [2]点击“开始”→“运行”(或按快捷键win+R),在弹出框中输入“cmd”,进入dos操作界面.   [3]do ...

  9. 第七篇:Jmeter连接MySQL的测试

    .准备一个有数据表格的MySQL数据库: 2.在测试计划面板上点击浏览按钮,把你的JDBC驱动添加进来: mysql-connector-java-5.1.26-bin.jar 3.添加一个线程组-- ...

  10. ES5新增数组方法every()、some()、filter()、map()

    JavaScript ES5标准中新增了一些Array方法,如every().some().filter().map().它们的出现使我们能够更加便利地操作数组,但对IE9以下浏览器的兼容性比较差.下 ...