java 集合之LinkedList 构造器 方法 遍历方法 listIterator

java 集合之LinkedListList 和 Deque 接口的双向链表实现。 实现所有可选的列表操作,并允许所有元素(包括空值)。除了实现 List 接口外,LinkedList 类还为在列表的开头及结尾 get、remove 和 insert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列。实现 Deque 接口,为 add、poll 提供先进先出队列操作,以及其他堆栈和双端队列操作。所有操作都是按照双重链接列表的需要执行的。在列表中编索引的操作将从开头
分类: 其他 发布时间: 11-26 09:46 阅读次数: 0

iterator() Iterator Iterable listIterator

iterator() Iterator Iterable listIterator关系以ArrayList类举例#mermaid-svg-sYcXKoDw7ZntMhht .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-sYcXKoDw7ZntMhht .label text{fill:#333}#merm
分类: 其他 发布时间: 11-26 09:46 阅读次数: 0

Java 集合之Set接口

Java 集合之Set接口不包含重复元素的集合。 更确切地讲,set 不包含一对e1.equals(e2)的元素 e1 和 e2,并且最多包含一个空元素。 正如其名称所暗示的那样,此接口模仿了数学上的 set 抽象。除了从 Collection 接口继承的那些之外,Set 接口对所有构造函数的协定以及 add、equals 和 hashCode 方法的协定进行了额外的规定。 为方便起见,此处还包括其他继承方法的声明。 (这些声明附带的规范已针对 Set 接口量身定制,但它们不包含任何附加规定。
分类: 其他 发布时间: 11-26 09:46 阅读次数: 0

java集合之 HashSet LinkedHashSet

HashSet这个类实现了 Set 接口,由一个哈希表(实际上是一个 HashMap 实例)支持。 它不保证 set 的迭代顺序; 特别是它不保证该顺序恒久不变。此类允许 null 元素。假设哈希函数在桶中正确地分散元素,那么这个类为基本操作( add、remove、contains 和 size)提供稳定性能。 迭代这个 set 需要的时间与 HashSet 实例的大小(元素数)和底层 HashMap 实例(桶的数量)的“容量”的和成比例。 因此,如果迭代性能很重要,则不要将初始容量设置
分类: 其他 发布时间: 11-26 09:46 阅读次数: 0

java 比较器 compareTo compare 内部比较器 外部比较器

比较器 compareTo compare 自定义类 内部比较器 外部比较器int类型比较的思路:将比较的数据做差,然后返回一个int类型的数据,将这个int类型的数值 按照 =0 >0 <0int ai = 10;int bi = 20;System.out.println(ai-bi); // =0 >0 <0StringcompareToint compareTo(String anotherString) 按字典顺序比较两个字符串。两个
分类: 其他 发布时间: 11-26 09:46 阅读次数: 0

Java 集合之TreeSet 自定义类 比较器

Java 集合之TreeSet基于 TreeMap 的 NavigableSet 实现。 使用元素的自然顺序进行排序,或者通过在集合创建时提供的 Comparator 进行排序,具体取决于使用的构造函数。唯一,无序(没有按照输入顺序进行输出)又有序(按照升序进行遍历)。此实现为基本操作(添加、删除和包含)提供有保证的 log(n) 时间成本。请注意,如果要正确实现 Set 接口,则 set 维护的顺序(无论是否提供了显式比较器)必须与 equals 一致。 (请参阅 Comparable
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

java 集合之Interface Map<K,V> HashMap实现类

java 集合之Interface Map<K,V>类型参数:K- 此映射所维护的键的类型;V- 映射值的类型将键映射到值的对象。 一个映射不能包含重复的键; 每个键最多可以映射到一个值。这个接口取代了 Dictionary 类,后者是一个完全抽象的类而不是一个接口。Map 接口提供了三个 collection 视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。 映射的顺序定义为映射的 collection 视图上的迭代器返回其元素的顺序。 某些映射实现可明
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

java集合之TreeMap 构造器 方法 比较器

java集合之TreeMap基于红黑树(Red-Black tree)的 NavigableMap 实现。 映射根据其键的自然顺序进行排序,或者通过映射创建时提供的 Comparator 进行排序,具体取决于使用的构造函数。此实现为 containsKey、get、put 和 remove 操作提供有保证的 log(n) 时间成本。 算法是对 Cormen、Leiserson 和 Rivest 的算法导论中的算法的改编。注意,如果要正确实现 Map 接口,则有序映射所保持的顺序(无论是否明
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

java集合之HashMap相关原理 方法

java集合之HashMapMap接口的基于哈希表的实现。 此实现提供所有可选的映射操作,并允许空null值和空null键。(除了非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同)该类不保证映射的顺序; 特别是它不保证该顺序恒久不变。此实现假定哈希函数将元素适当地分布在各桶之间,可为基本操作(get 和 put)提供稳定的性能。迭代collection 视图需要的时间与 HashMap 实例的“容量”(桶的数量)加上它的大小(键-值映射的数量)成比例。 因此,如果
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

Java集合之Collections工具类

Java集合之Collections工具类public class Collections extends Object此类仅包含对collection 进行操作或返回collection 的静态方法。 它包含对collection 进行操作的多态算法、“包装器”,它返回由指定collection 支持的新collection ,以及其他一些零碎的东西。如果提供给它们的collection 或类对象为空 null,则此类的方法都将抛出 NullPointerException。此类中包含
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

基于指针的冒泡排序函数

基于指针的冒泡排序函数使用在使用数组排序时,如果我们使用函数,就会面临数据传输的问题:例如其中的交换步骤写成函数,就会存在只在该函数中交换,而无法影响主函数的数值。如果我们不使用指针,那么要想返回多个值就只能使用函数返回map、数组或是封装一个实体类。例如如下的java实现冒泡排序:public class Bubble { public static int[] bubbleArray(int[] arr) { for (int i = 0; i < arr.leng
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

数字水印 LSB信息隐藏算法实验内容(matlab) 嵌入1~3个位平面并提取

LSB信息隐藏算法实验内容(matlab)1.将载体图片分成8个位平面,并显示。2.制作水印图片,可以嵌入1个位平面的、2个位平面的、3个位平面的。3.使用LSB信息隐藏算法,分别嵌入1bit/pixel、2bit/pixel、3bit/pixel,并显示伪装图像。4.提取嵌入的秘密信息。将载体图片分成八个位平面,并显示。载体图片相关代码%% 第一张 风车imgW = imread('7.bmp');imgW=imresize(imgW,0.5);imgWsize=size(
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

DLL实验 编程实现斐波那契数列第N项、阶乘函数 CLion

DLL实验.dll是动态链接库(Dynamic Link Library)的缩写。DLL是一个包含可由多个程序,同时使用的代码和数据的库。可以更为容易地将更新应用于各个模块,而不会影响该程序的其他部分编程实现DLL,导出斐波那契数列前N项和、阶乘函数DLL部分编写创建DLL项目在CLion中New Project,选择 C Library选择自己的项目路径(以后会用到)Libaray选择shared点击Creat创建编写DLL文件在项目自动新建出的librar
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

DLL实验 编程实现斐波那契数列前N项和、阶乘函数 VS

DLL实验编程实现DLL,导出斐波那契数列前N项和、阶乘函数.dll是动态链接库(Dynamic Link Library)的缩写。DLL是一个包含可由多个程序,同时使用的代码和数据的库。可以更为容易地将更新应用于各个模块,而不会影响该程序的其他部分创建DLL创建DLL新项目项目名字DLL1,正式创建创建头文件Dll1.h,用于声明需要导出的函数创建源文件Dll.cpp,用来存放源代码​ 同时为了让导出的函数名稳定,添加.def模块定义文件
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

密码学 对称密码之 RC4 python java 实现

密码学 对称密码之 RC4实验目的理解流密码的概念及相关结构;理解并能够编写基本的流密码体制;熟练应用一种编程语言实现 RC4 密码算法体制。基本原理RC4 算法是一种序列密码体制或称流密码体制,其加密密钥和解密密钥相同 RC4 的密钥长度可变,但为了确保哪去安全强度,目前 RC4 至少使用 128 位的密钥。用 1~256 个字节(8~2048 位)的可变长度密钥初始化一个 256 个字节的状态向量S,S 的元素记为 S[0],S[1],…,S[255],从始至终置换后的 S 包含从 0 到
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

数字水印 基于龟壳魔术矩阵的信息隐藏算法

基于龟壳魔术矩阵的信息隐藏算法实验内容编程实现龟壳魔术矩阵读取载体图像并设计秘密信息设计并实现龟壳信息隐藏算法,将秘密信息嵌入载体图像中提取嵌入的秘密信息。实验步骤编程实现龟壳魔术矩阵%% 生成龟壳矩阵turtmat=zeros(256);turtmat(1,1)=6;%第一行for j=2:256 turtmat(1,j)=mod(turtmat(1,j-1)+1,8);end%第2-256行for i=2:256 if mod(i,2)==0
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

数字水印 EMD 魔术矩阵

实验目标1.编程实现EMD魔术矩阵。2.读取载体图像并设计秘密信息。3.设计并实现EMD信息隐藏算法,将秘密信息嵌入载体图像中 。4.提取嵌入的秘密信息。实验步骤01EMD魔术矩阵%% 实现EMD魔术矩阵n=256;m5=zeros(5,5);%先生成5*5的for i=1:5 m5(1,i)=i-1; m5(2,i)=mod(i+2,5); m5(3,i)=mod(i+5,5); m5(4,i)=mod(i+3,5); m5(5,i)=mod(i
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

密码学之模乘法逆元算法 欧几里得拓展算法 逆元 python java实现

实现模乘法逆元算法一、实验目的通过本实验使学生掌握最大公因子算法的实现、同余类中元素的乘法逆元的求解。二、实验原理本实验的准备知识包括最大公约数、模运算及其基本性质、互素等概念。最大公约数:a和b的最大公约数是能够同时整除a和b的最大正整数,记为:gcd(a,b)或(a,b)。互素的(既约的):满足 gcd(a,b)=1 的 a 和 b。同余(模运算):设整数 a,b,n(n≠0),如果 a-b 是 n 的整数倍(正的或负的),我们就说 a≡b(mod n),读作:a 同余于 b
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

软件安全之动态链接库的使用 Libzplay 播放音乐

实验 1 动态链接库的使用实验说明Libzplay 是遵循 GPL 协议的开源库,它集成了 mp3、flac、ac3、aac、wav等多种音频格式的解码器和编码器,提供了面向 C/C++、C#、Delphi 等多种编程语言的接口,仅需 3 行代码(创建播放资源,打开文件,开始播放)便可实现音乐播放功能。实验目的本实验通过 Libzplay 提供的 C 语言接口,实现简单的音乐播放器,以此学习 DLL 的隐式和显式加载方式。实验原理课程第 2 讲基础知识实验环境Windows
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0

程序 进程 线程 并发 并行

程序 进程 线程 并发 并行程序(program) : 是为完成特定任务、用某种语言编写的一组指令的集合,是一段静态的代码(程序是静态的)进程(process) : 是操作系统对一个正在运行的程序的一种抽象。在一个系统上可以同时运行多个进程,而每个进程都好像在独占地使用硬件。是程序的一次执行过程,正在运行的一个程序,进程作为资源分配的单位,在内存中会为每个进程分配不同的内存区域, 是一个动的过程 (进程是动态的)进程的生命周期 : 有它自身的产生、存在和消亡的过程。线程(th
分类: 其他 发布时间: 11-26 09:45 阅读次数: 0