#数据结构与算法

java数据结构5--集合Map

  Map与Collection在集合框架中属并列存在Map存储的是键值对<K,V>Map存储元素使用put方法,Collection使用add方法Map集合没有直接取出元素的方法,而是先转成Set集合,再通过迭代获取元素Map集合中键要保证唯一性(和HashSet一样,用hashcod...
代码星球 代码星球·2021-02-22

java数据结构4--集合Set

  Set接口用来表示:一个不包含“重复元素”的集合Set接口中并没有定义特殊的方法,其方法多数都和Collection接口相同。重复元素的理解:通常理解:拥有相同成员变量的对象称为相同的对象,如果它们出现在同一个集合中的话,称这个集合拥有重复的元素HashSet中对重复元素的理解:和通常意义上的理...
代码星球 代码星球·2021-02-22

java数据结构3--List

1.1list接口的简介  1.2list实现子类ArrayList:线程不安全,查询速度快,底层用的是数组,增删慢LinkedList:线程不安全,链表结构,增删速度快,查询慢Vector:线程安全,但速度慢,已被ArrayList替代 1.3list的遍历方法  &...
代码星球 代码星球·2021-02-22

java数据结构2--集合总论

   0.1、为什么出现集合类?面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式(容器)Java中集合也是类,真正用来存储东西的是某种集合类的实例对象。0.2、集合类VS数组数组和集合类都是容器,有何不同?集合类的特...

java数据结构--array与ArrayList的区别

 ArrayList 内部是由一个array 实现的。如果你知道array 和 ArrayList 的相似点和不同点,就可以选择什么时候用array或者使用ArrayList,array 提供O(1)的查找性能和很基本的方式去存储数据。ArrayLi...

java数据结构1--数组、排序和Arrays工具类

数组的定义数组的内存结构数组定义常见问题数组常见操作Java参数传递问题--值传递二维数组1.数组概念同一种类型数据的集合,可以是基本数据类型,也可以是引用数据类型。数组的特点:数组存储的都是相同数据类型的元素(相同数据类型)数组的长度也就是数组中元素的个数(固定长度)元素从0开始编号,编号也称“索引”:index(下...

算法学习1-插入排序

学习算法,简单做了个小练习,插入算法:1<scripttype="text/javascript">2varn=100;3vararray=newArray(n);4//用A来进行排序5varA=newArray();6//生成100个随机数的数组7for(vari=0;i<array.length;...
代码星球 代码星球·2021-02-21

javascript学习6-练习之3二分查找算法

二分查找算法,对数据进行查找并且显示位置。核心思想:将所查找数据与查询数组中间的数进行比较,findVal<midVal,则在左边进行二分查找,否则在右边进行二分查找递归调用具体代码如下:1//二分查找2varstring2=[1,3,42,88,123,143];3varleftIndex=0;4varrigh...

javascript学习5-练习之2冒泡排序算法

复习冒泡排序算法,同时自己也写了一个排序算法。实现效果:1.自己的算法思想:数组中数据取第一个为默认最小,依次和后面每个数据比较,只要有比其小的就交换直至找出最小的。然后将第二个数据与其后面所有数据比较,找出最小,依次重复2.冒泡排序算法思想:数据从最低端到最高端为a[n]......a[0]第一轮:将a[0]与a[1...

小程序 之使用HMACSHA1算法加密报文

首先说说我们前端常用的加密技术,我们常用的加密技术有:如MD5加密,base64加密今天要说的是HMACSHA1加密技术先介绍下什么是SHA1算法,安全哈希算法(SecureHashAlgorithm)主要适用于数字签名标准(DigitalSignatureStandardDSS)里面定义的数字签名算法(Digital...

幂运算的高效率算法

问题描述:计算X^N.算法思想:如果N是偶数,我们有X^N=X^(N/2)×X^(N/2),如果N是奇数,则X^N=X^(N-1)/2×X^(N-1)/2×X。算法描述:longintPow(longintX,unsignedintN){if(N==0)return1;if(N==1)returnX;if(IsEven...
代码星球 代码星球·2021-02-21

欧几里德算法

欧几里德算法:欧几里德算法又称辗转相除法,用于计算两个正整数a,b的最大公约数(Thegreatestcommondivisor)。其计算原理依赖于下面的定理:定理:gcd(a,b)=gcd(b,amodb)(a>b且amodb不为0)证明:a可以表示成a=kb+r,则r=amodb假设d是a,b的一个公约数,则...
代码星球 代码星球·2021-02-21

对分查找算法

问题描述:给定一个整数X和整数A0,A1,...,A(N-1),后者已经预先排序并在内存中,求使得Ai=X的下标,如果X不在数据中,则返回i=-1.算法描述:intBinarySearch(constElementTypeA[],ElementTypeX,intN){intLow,Mid,High;Low=0;High...
代码星球 代码星球·2021-02-21

TCP/IP 中的二进制反码求和算法

对于这个算法,很多书上只是说一下思路,没有具体的实现。我在这里举个例子吧以4bit(计算方便一点,和16bit是一样的)做检验和来验证。建设原始数据为1100,1010,0000(校验位)那么把他们按照4bit一组进行按位取反相加。1100取反0011,1010取反是0101,0011加上0101是1000,填入到校验...
首页上一页...7891011...下一页尾页