数据结构
yang_B621
后天的努力改变生活!When life gives you lemons,make lemonade.
展开
-
经典算法系列-快速排序
快速排序转载 2018-03-07 14:34:33 · 103 阅读 · 0 评论 -
常见位运算,提高算法效率(c)
第一条:利用位运算判断一个整数是奇数还是偶数。 经常用到一个for循环,当索引i是奇数时执行语句A,偶数时执行语句B。判断i是奇数还是偶数,可用如下方法: if(i &1){ //i是奇数情况执行的代码 } else{ //i是偶数情况执行的代码 } 位运算的优先级最低,但是运算速度却最快,所以用i&1判断奇偶,要比用i%2==1来判断大约快4倍。在一个要执行上万次的for...原创 2018-03-07 14:53:29 · 3421 阅读 · 1 评论 -
.NET下的内存分配机制
对于任何对象的产生,都伴随着内存空间的分配,那么本文将初步介绍一下.NET下,是如何进行内存分配的。这里部分引用了Anytao《你必须知道的.NET》和happyhippy在《类型实例的创建位置、托管对象在托管堆上的结构》的相关内容。https://www.cnblogs.com/happyhippy/archive/2007/04/12/710927.html1.概述...翻译 2019-03-12 15:53:52 · 1179 阅读 · 0 评论 -
值类型和引用类型
一:C#把数据类型分为值类型和引用类型 1.1:从概念上来看,其区别是值类型直接存储值,而引用类型存储对值的引用。 1.2:这两种类型在内存的不同地方,值类型存储在堆栈中,而引用类型存储在托管对上。存储位置的不同会有不同的影响。例如int类型是值类型:int x,y; x=10;y=x;y=20;前三个语句会在内存的两个地方存储值10。改变y的值不会影响x。如果已...翻译 2019-03-12 15:58:17 · 120 阅读 · 0 评论 -
值传递和引用传递
二:给方法传递参数分为值传递和引用传递。 2.1在变量通过引用传递给方法时,被调用的方法得到的就是这个变量,更准确的说,是指向内存中变量的指针。所以方法内部对变量进行的任何改变在方法退出后仍然有效。而如果变量通过值传递给方法,被调用的方法得到的是变量的一个相同副本,也就是说方法退出后,对变量进行的修改会丢失。 2.2值类型的值传递:值类型的变量包含的是实际数据,作为参数传递的是数据本身的...翻译 2019-03-12 16:01:14 · 150 阅读 · 0 评论 -
值类型转换为引用类型——(装箱、拆箱)
1.1,C#数据类型分为在栈上分配内存的值类型和在托管堆上分配内存的引用类型。如果int只不过是栈上的一个4字节的值,该如何在它上面调用方法?二:值类型转换为引用类型——装箱 2.1CLR对值类型进行装箱时:新分配托管堆内存,将值类型的实例字段拷贝到新分配的内存中,返回托管堆中新分配对象的地址。这个地址就是一个指向对象的引用。int i = 10;Object obj = i;...翻译 2019-03-12 16:03:15 · 2946 阅读 · 0 评论 -
C# 数据结构
https://www.cnblogs.com/npucloud/articles/5500832.html原创 2019-03-12 16:06:43 · 173 阅读 · 0 评论 -
数据结构
https://blog.csdn.net/jianghao233/article/details/82827244转载 2019-06-27 18:06:05 · 111 阅读 · 0 评论