自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 栈的基本实现

从栈中移除元素的操作,一般叫做 pop,出栈(只能移除栈顶元素,也叫做:弹出栈顶元素)注意:这里说的 “栈” 与内存中的 “栈空间” 是两个不同的概念;后进先出的原则,Last In First Out,LIFO。类似的应用场景:软件的撤销(Undo)、恢复(Redo)功能。往栈中添加元素的操作,一般叫做 push,入栈。栈是一种特殊的线性表,只能在一端进行操作。栈的内部实现是否可以直接利用以前学过的。利用前面写的动态数组实现栈,极其简单;

2023-08-22 13:31:35 71 1

原创 单向循环链表、双向循环链表以及约瑟夫环问题

Arrarylist还有可以优化的地方,每次删除元素的时候都要将所有元素前移,如果定义一个指针只记录头元素的位置就很方便。插入元素的时候,可以判断插入的位置靠前还是靠后来选择移动哪个部分的元素,再更新头指针。

2023-08-22 13:29:44 86 1

原创 单向链表,双向链表

如果内存空间有点紧张,动态数组有比较多的剩余空间(比如说剩余元素占总空间的一半的时候),可以考虑缩容的操作。可以使用继承,但是仅仅只是对外接口差不多,但实际实现的代码肯定是不尽相同,所以弄一个父类没有意义。动态数组:开辟、销毁内存空间的次数相对较少,但可能造成内存空间浪费(可以通过缩容解决)双向链表:开辟、销毁内存空间的次数相对较多,但不会造成内存空间的浪费。如果有频繁的 (在任意位置)添加、删除操作,建议选择使用双向链表。如果有频繁的查询操作(随机访问操作),建议选择使用动态数组。

2023-08-22 13:28:50 86 1

原创 动态数组,线性表

线性表是具有 n 个相同类型元素的有限序列( n ≥ 0 )a1 是首节点(首元素), an 是尾结点(尾元素)a1 是 a2 的前驱, a2 是 a1 的后继常见的线性表有:数组链表栈队列哈希表(散列表)数组(Array)数组是一种顺序存储的线性表,所有元素的内存地址是连续的在很多编程语言中,数组都有个致命的缺点: 无法动态修改容量实际开发中,我们更希望数组的容量是可以动态改变的动态数组接口设计,至少包含以下内容:动态数组的结构:sizeelements备注java中,成员变量会自动初始化int类型自动初

2023-08-17 17:25:00 97 1

原创 时间空间复杂度

算法是用于解决特定问题的一系列的执行步骤。以下算法是为了解决两数相加的问题:// 计算a和b的和 public static int plue(int a, int b){ return a + b;以下算法是为了解决 n个数字的和 的问题:i <= n;i++){使用不同算法,解决同一个问题,效率可能相差非常大。比如:求第 n 个斐波那契数(fibonacci number) 如何评判一个算法的好坏?

2023-08-17 17:20:13 77 1

原创 密码学笔记

前面DES和AES都有key,而加密模式是说怎么用key。ECB是同key并行,CBC是变key串行消息摘要(Message Digest)又称为数字摘要(Digital Digest)它是一个唯一对应一个消息或文本的固定长度的值,它由一个单向Hash加密函数对消息进行作用而产生输入长度不定,输出长度一定。单向不可逆使用数字摘要生成的值是不可以篡改的,为了保证文件或者值的安全。

2023-08-07 15:32:30 239

原创 CSDN积分获取方法

5、每发布一篇原创或者翻译文章:可获得10分(这里就可以看出社区对原创的奖励有多大了,不过大家须小心的是社区有相应的抄袭举报功能,一旦举报证实某篇原创文章抄袭,将扣除博主该篇文章相应的得分)2、发表一次评论可以获取可获得1分(需要注意的是自己给自己评论、博主回复别人对自己博文的评论不获得积分)8、每篇博文阅读次数每超过100次:可获得1分,阅读加分最高加到100分,即每篇文章点击上万次截止。6、每发表一次评论:可获得1分(自己给自己评论、博主回复别人对自己博文的评论不获得积分)

2023-08-07 15:29:55 103 2

原创 Docker的安装

还可以运行:sudo docker run hello-world。我们一般要去docker官网查看explore,里面会有各种app。输入:docker version 能看见版本即安装成功啦。其中nginx拉取指令:docker pull nginx。运行nginx:docker run nginx。会显示:Hello from Docker!额外的命令:拉取nginx并运行。1.首先打开Ubuntu的终端。更新 apt 包索引。

2023-04-21 09:25:09 154 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除