自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【日撸 Java 三百行】Day 18(循环队列)

在 Day 17 中讲过,我们之所以使用链表来实现队列,是因为使用顺序表时左侧出队的代价太大。但我们巧妙的改进队列的结构后,一切就变得简单起来。具体的操作是:选择 逻辑上的删除 ,即利用双指针控制,令我们的首选元素的下标指向+1,从而在逻辑上屏蔽掉之前的位置的元素。

2025-05-16 11:35:01 1010

原创 【日撸 Java 三百行】Day 17(链表实现队列)

与栈类似,队列(queue)也是一种限制访问点的线性表。队列的元素只能从表的一端插人,另一端删除。按照习惯,通常会把只允许删除的一端称为队列的头,简称队头(font),把删除操作本身称为出队(dequeue);而称表的另一端为队列的尾,简称队尾(rear),这一端只能进行插人操作,称为入队(enqueue)。如同现实生活中的队列一样,在没有人为破坏的前提下,队列是按照到达的顺序来释放元素的,即先进入队列中的元素会先离开,因此队列通常也被称为先进先出(first in frst out)表,简称FIFO表。

2025-05-16 10:39:52 718

原创 【日撸 Java 三百行】Day 16(递归)

常常伴随递归出现的就是递归函数(Recursive Function),简单来说:就是在函数内部再次调用函数自己的过程,但是通过每次调用时携带参数的不同,从而保证每次调用都是一个全新的上下文。然后通过调用过程中的参数传递性,保证每次调用都与上一次调用存在关联性,从而实现一种逻辑上的迭代过程。理论上,对于一切一维迭代的for循环,都可以用递归去模拟。

2025-05-15 19:55:33 757

原创 【数据结构】队列

与栈类似,队列(queue)也是一种限制访问点的线性表。队列的元素只能从表的一端插人,另一端删除。按照习惯,通常会把只允许删除的一端称为队列的头,简称,把删除操作本身称为;而称表的另一端为队列的尾,简称,这一端只能进行插人操作,称为。如同现实生活中的队列一样,在没有人为破坏的前提下,队列是按照到达的顺序来释放元素的,即先进入队列中的元素会先离开,因此队列通常也被称为,简称。图3.9所示为队列的一个示例。售票窗口排队等待买票的人即为队列的一个日常实例。

2025-05-15 19:24:06 1033

原创 【日撸 Java 三百行】Day 15(栈的应用——括号匹配)

要针对不同的问题导出不同的原则(比如这里的符号左右匹配,算术字符串的加减乘数优先级),并且为不同的原则采取适当的栈内优先级,有选择的一步步解决问题。若不想额外费时费力判断栈空,有种缩短代码的技巧:在遍历开始前,于括号栈中塞入任何一个非括号字符就可以了,这样遇到栈空时,栈顶的字符绝对不是当前右括号想要的左括号(因为它甚至不是括号),从而默认触发第二个情况。若整个过程都完美匹配,但是最后发现括号栈不空,那么这也不对,因为栈内的左括号还没有匹配完毕,这个时候也要报错。而这种思维,对于所有数据结构来说是共通的。

2025-05-15 09:56:58 906

原创 【日撸 Java 300行】Day 14(栈)

栈贯穿了计算机的各个邻域,栈的概念在硬件中就早有使用,因为栈的实现,促成了操作系统的中断特性的实现,而中断的特性又促成后来批处理操作系统的诞生,是当代计算机的奠基石。出栈时,使用resultChar先接收栈顶数据,之后再进行栈指针的下移操作,实现逻辑上元素减少(但是实际上这个值还是存放在原指针所指的位置的),因为我们确定栈元素的多少仅依靠栈顶指针的具体值而定。当然,这种数据中转存储的数据类型我们不是说都称之为栈,还包括有有队列性质的高速缓存与各种正常的顺序存储的文件系统等,只是说栈有些独有方面的特例。

2025-05-13 21:20:38 877

原创 【数据结构】栈

以阶乘函数为例来说明递归的定义。阶乘n!的递归定义如下:为了定义整数n的阶乘,必须先定义(n-1)的阶乘,而为了定义(n-1)的阶乘,又需先定义(n-2)的阶乘,如此直到0为止,因为此时阶乘定义为1。这种用自身的简单情况来直接或间接地定义自己的方式称为递归定义。可以看出,一个递归定义由两部分组成。其一为递归基础,也称递归出口,是递归定义的最基本情况,也是保证递归结束的前提;其二则为递归规则,确定了由简单情况构筑复杂情况需遵循的规则。上面的阶乘定义中递归出口即为n≤0,此时阶乘定义为1;

2025-05-13 16:54:10 939

原创 【日撸 Java 三百行】Day 13(链表)

指针是C、C++中最灵活,也是最容易产生错误的数据类型。我们常见的诸多语言中只有C与C++还在坚持使用指针(Pointer)的概念与说法,而后续的再高级语言,例如Python与Java都直接抛弃这个概念,C#也更是婉转避开这个概念,而是通过unsafe来使用(一般情况下使用的是委托),而Java使用的是引用的概念。其实不然,单独声明一个孤单的对象时,他在内存中也是会单独开辟一个很小的空间(根据操作系统,在4B或8B一定),这个空间内部是用于存放后期使用new为其分配空间后,用于存放分配空间的起始地址的。

2025-05-12 22:18:25 1076 2

原创 【日撸 Java 三百行】Day 12(顺序表(二))

Task:今天的代码直接在昨天的基础上增加. 只贴出新的部分.

2025-05-12 20:04:48 770

原创 【日撸 Java 三百行】Day 11(顺序表(一))

此外,这里还重写了Object的toString()方法(Java中所有类都是Object类的儿子),因为这个方法与print()方法挂钩,重写了这个方法后,我们创建的对象就能通过print操作打印出数据,能更加方便数据的使用以及可读性。其中,需要注意的是第一二行,我们用了两种不同的输出方式,一种调用了我们重构的 toString() 函数,另一种是通过 println() 函数中对 List 的特殊处理方式。虽然学习笔记中是用 C++ 来实现的,但是构建顺序表的思维模式是相同的,举一反三即可。

2025-05-12 19:33:06 686

原创 【数据结构】线性表

顺序表的示意图如下图所示, 其中图(a)为线性表的逻辑结构,图(b)为线性表的顺序存储结构。假设每个元素占用工个存储单元,并以第一个单元的存储地址代表数据元素位置。设顺序表的开始结点k。的存储位置记为b=loc(k),称为顺序表的首地址或基地址,下标为i的元素;的存储位置则为由上述公式可知,每个元素的存储位置都与起始位置相差一个与位序成正比的常数。只要确定了基地址,线性表中任一元素的地址都可以方便地计算出来,从而达到随机存取的效果,因此顺序表是一种随机存取的存储结构。

2025-05-11 22:13:45 751

原创 【数据结构】前言

由于作者是电子专业,培养计划中不强制要求学习数据结构与算法。而在涉及计软相关的项目,数据结构与算法终究是绕不开的核心要点,故开此博文,用于记录个人的学习过程。如有错误,敬请指正。

2025-05-11 19:12:12 176

原创 【日撸 Java 三百行】Day 10(综合任务 1)

初始化定义的上限不是100而是101是因为随机函数的右界是个开区间,因此要取满需要额外加一。此外,考虑到学生数量是不确定的,且考虑到成绩表的可扩展性,这里采用的是动态分配的方法创建矩阵。int n = 10;int m = 3;i < n;j++) {

2025-05-10 19:58:10 729

原创 【Java 专题补充】Arrays类详解

Arrays 类是 Java 语言中用于操作数组的一个工具类,提供了多种静态方法来处理数组,包括排序、搜索、填充、比较等操作。这个类位于 java.util 包中。Arrays类的构造方法被设置为私有(private),因此无法创建 Arrays 对象。Arrays 类的所有公有方法都是静态的,可以直接通过类名调用。返回一维数组的字符串表示。(1)示例(代码及运行结果)(2)源码if (a == null) // 判断 a 是否为空引用,如果为空引用,则返回 "null" 字符串。

2025-05-09 21:35:05 834

原创 【日撸 Java 三百行】Day 9(While语句)

相比于 for 循环语句,while 常用于已知结束条件,未知循环具体次数的情景。同时,while 还有一个常见用法:while(true),使得某功能持续运行,可以通过 break 来跳出循环。加上在学习 switch,for 语句后也有对应的专题总结,基础知识这里略过。while 和 for 的区别主要在:for 常用于已知具体需要循环多少次,while 常用于未知具体循环次数,但知道结束条件。具体逻辑与 for 类似,这里不做展开,仅仅给出对应代码和运行结果。

2025-05-09 21:34:57 460

原创 【日撸 Java 三百行】Day 8(矩阵乘法的代码实现)

一般来说,三重循环式大部分程序的极限,如果有更多层,那你首先需要做的,是回过头分析,是不是复杂了。所谓矩阵乘法是两个具有一定关系的两个矩阵之间彼此行列之间关系的一种运算,一般来说,左乘矩阵的列数等于右乘矩阵的行数。这里我们定义A矩阵为m×n的矩阵,B矩阵为n×p的一个矩阵,自然C是个m×p的矩阵。因为矩阵乘法涉及矩阵的每一个元素,同时A矩阵的全体行构造的集合要与B矩阵全体列构成的集合进行逐一运算,因此自然匹配的复杂度是。其中每个单独C中的元素都是由矩阵A和矩阵B中确定的一个行与列作用得到的。

2025-05-09 21:34:50 428

原创 【日撸 Java 三百行】Day 7(Java的数组与矩阵元素相加)

但需要注意的是,在使用这些现成的函数时,要有意识的去理解背后的原理,否则只会成为空有其表的调包侠。首先矩阵的高其实就是矩阵的一维部分,一个矩阵在计算机中可以看做是“一维数列”的数组,把这个数组的元素纵向放置就构成了我们视觉可见的一个“矩形”的数字阵列。而这个“一维数列”的数组的长度自然就是这个阵列的纵向长度,也就是高,是把这个数组的元素纵向放置可以排的行数。同理,“一维数列”的数组中的每个元素都是一个一维数列,每个数列的长度就构成了矩阵的长,或者说列数。同样的,我们依旧把这个功能封装为单独的函数。

2025-05-09 21:34:45 935

原创 【Java 专题补充】流程控制语句

流程控制语句是用来控制程序中各语句执行顺序的语句,是程序中既基本又非常关键的部分。流程控制语句可以把单个的语句组合成有意义的、能完成一定功能的小逻辑模块。最主要的流程控制方式是结构化程序设计中规定的三种基本流程结构。

2025-05-08 20:40:40 665

原创 【日撸 Java 三百行】Day 6(For语句)

其实不然,循环有个基本条件,就是循环因子要小于等于限定的N才能进入循环,而我们的代码循环因子是从1开始的,而这里第二案例N=0,不满足循环的条件,自然是没有循环的发生,答案也自然是0。这里分别构造的两个函数循环的操作都是求1到N和的操作,分别使用了默认的步长1的递增for循环,以及自定义步长值的for循环操作。循环是编写程序的一个非常基本的能力,灵活利用各种循环的嵌套和循环的组合是一个程序员的基本功。循环语句是计算机编程中计算大数据的内容的优势之处,是同时也是简化重复流程的重要方法。

2025-05-08 20:06:59 425

原创 【日撸 Java 三百行】Day 5(Switch语句)

相比于if-else if-else更复杂的重叠与非重叠条件,switch可以实现单个信息的多段区分判断,换言之,若我们需要判断的数据是单一变量的值域在多个分段的区分问题(而且这种分段比较多),那么switch要比if-else if-else来得更加直观。从上图可以发现,评级系统本质上是分数与等级的映射关系。在当今的计算机中,switch 语句和 if 语句的速度/效率差距已经可以忽略不计,更多的时候我们考量的是 “谁能够更加清晰的表达逻辑关系”,以增强程序的可读性以及逻辑性。

2025-05-08 19:21:55 646

原创 【日撸 Java 三百行】Day 4(条件语句实战——闰年问题)

闰年是历法中的名词,分为普通闰年和世纪闰年。闰年(Leap Year)是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的。补上时间差的年份为闰年。——来自百度百科。

2025-05-06 23:46:32 975

原创 【日撸 Java 三百行】Day 3(注释,基本if语句,函数调用)

(1)找到 Window → Preferences,在左上角的输入框中输入Code Templates,找到Java → Code Style → Code Templates,在Code Templates视窗中选择Code, 配置代码模板(即 创建类时,自动生成注释)其中,可以利用说明符“${}”支持相关的信息宏定义,当然,个人项目按照自己的习惯就好,但是,若自己的编写内容要在一个标准化环境下或者一个项目组中应用的话,还是以组内标准要求为主。将功能封装为函数,能够有效的提高代码的可阅读性以及结构性。

2025-05-06 12:25:12 660

原创 【Java 专题补充】数据与运算

本章主要介绍编写Java程序必须了解的若干语言基础知识,包括数据类型、变量、常量、表达式等。掌握这些基础知识,是编写正确Java 程序的前提条件。

2025-05-06 11:12:49 600

原创 【日撸 Java 三百行】Day 1-2(环境搭建与基本运算)

作者有一定的 java 基础,同时较为熟悉 C,C++,python 等语言,有较为基础的计算机素养。此博客主要是用于记录学习历程,强化代码能力,同时,也可以作为后续勘误参考的工具/回顾知识点的集合。

2025-05-05 21:37:34 590

原创 【五一培训】Day 4

从输入到输出是否可以建立可靠的映射?(理解:机器学习中间部分是具有随机性和的,明确输入和输出的映射关系能够有效保证可解释性)把问题抓住了,才知道如何去更好的解决input和output排列组合,就是新的研究方向。

2025-05-04 23:40:16 711

原创 【五一培训】Day 3

区分少样本学习与元学习少样本学习(Few-shot learning)是元学习的一个重要应用,它指的是机器能够在仅有少量样本的情况下,成功地学习和泛化到新任务上。在许多现实应用中,数据稀缺或新任务的出现意味着我们无法依赖大量的标注数据进行训练,这时候,元学习的能力就显得尤为重要。通过少样本学习,模型能够快速适应新任务,并且能够在极少的训练样本上做到较好的预测。

2025-05-04 23:16:47 971

原创 【五一培训】Day 2

注:1. 本次培训内容的记录将以“Topic”的方式来呈现,用于记录个人对知识点的理解。2. 由于培训期间,作者受限于一些现实条件,本文的排版及图片等相关优化,需要过一段时间才能完成。3. 关于老板点评的一些思考你也是一只老鸟了,可以有更深的体会。如何理解“更深的体会”,我觉得应该从以下四个方面入手:即 what,why,how,transfor,code。时刻多问这五点,将每一个关键的五点搞清楚,其掌握程度就能有所保障。另外,对于今天的回答,提醒了我,更要在如下几个方面深入学习。

2025-05-02 23:46:50 674

原创 【五一培训】Day1

例如: 人们常说自己有多重, 然后表达想减肥的意愿. 但这种想法是错误的, 应该从身高和体重计算 BMI, 以此确定自己是否偏胖. 这里 “从计算 BMI”, 就是一个特征提取的过程.\n 总的来说, 特征选择相对简单, 而特征提取有很大的相像空间. 后面将会介绍的神经网络, 其最本质的任务就是特征提取.DL-FWI的数据处理本质是**物理规律与数据驱动的协同优化**:既要通过传统地球物理方法保证数据的地质合理性,又需借助深度学习技术突破传统方法的表征瓶颈。显然,我们可以明显的感觉到,这个回答是杂而乱的。

2025-05-01 22:56:33 969

原创 【网页设计】PC端品优购项目

项目名称:品优购项目描述:品优购是一个电商网站,我们要完成 PC 端首页、列表页、注册页面的制作我们写的品优购网站,目前是放到自己电脑上的,只能自己访问浏览。如果想要很多人访问我们的网站,可以把品优购放到服务器上,这样就可以多人访问我们的品优购网站了。服务器(我们也会称之为主机)是提供计算服务的设备,它也是一台计算机。在网络环境下,根据服务器提供的服务类型不同,服务器又分为文件服务器、数据库服务器、应用程序服务器、Web 服务器等。Web 服务器一般指网站服务器。

2024-11-21 11:25:59 796

原创 【网页设计】CSS3 进阶(动画篇)

转换transform 我们简单理解就是变形 有2D 和 3D 之分我们暂且学了三个 分别是 位移 旋转 和 缩放2D 移动 translate(x, y) 最大的优势是不影响其他盒子, 里面参数用%,是相对于自身宽度和高度来计算的可以分开写比如 translateX(x) 和 translateY(y)2D 旋转 rotate(度数) 可以实现旋转元素 度数的单位是deg2D 缩放 sacle(x,y) 里面参数是数字 不跟单位可以是小数 最大的优势 不影响其他盒子。

2024-11-15 15:33:32 1446 1

原创 【网页设计】HTML5 和 CSS3 提高

过渡(transition)是CSS3中具有颠覆性的特征之一,我们可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果。HTML5 在不使用插件的情况下,也可以原生的支持视频格式文件的播放,当然,支持的格式是有限的。对于红色,是因为先找到的光头强,其标签为 p,与声明的 div 不符合,即没有符合条件的,所以不会变红。HTML5 在不使用插件的情况下,也可以原生的支持音频格式文件的播放,当然,支持的格式是有限的。

2024-11-12 20:43:23 2028 2

原创 【网页设计】CSS 高级技巧

这是因为在渲染过程中,是先读取网页结构,再按照样式一个接一个的渲染,第二个盒子的初始位置一定是紧贴第一个盒子的,所以不存在抵消情况。一个网页中往往会应用很多小的背景图像作为修饰,当网页中的图像过多时,服务器就会频繁地接收和发送请求图片,造成服务器请求压力过大,这将大大降低页面的加载速度。不同浏览器对有些标签的默认值是不同的,为了消除不同浏览器对HTML文本呈现的差异,照顾浏览器的兼容,我们需要对CSS 初始化。如果工作中,原来的字体图标不够用了,我们需要添加新的字体图标到原来的字体文件中。

2024-11-11 18:52:19 1446

原创 【网页设计】CSS 定位

一定记住 相对定位、固定定位、绝对定位 两个大的特点: 1. 是否占有位置(脱标否) 2. 以谁为基准点移动位置。学习定位重点学会子绝父相。通过盒子模型,清楚知道大部分html标签是一个盒子。通过CSS浮动、定位 可以让每个盒子排列成为网页。一个完整的网页,是标准流、浮动、定位一起完成布局的,每个都有自己的专门用法。1. 标准流可以让盒子上下排列或者左右排列,垂直的块级盒子显示就用标准流布局。2. 浮动可以让多个块级元素一行显示或者左右对齐盒子,

2024-11-05 21:19:20 1302

原创 【网页设计】学成在线案例

核心部分采用 10 个 li 即可,要记得对每个 li 的浮动,右边距声明即可。如果直接建立一个 footer 盒子,刷新后会发现直接与上面的核心模块重叠了,这是因为 li 没有声明高度,这个父盒子的高度就变成了 0(详细参考上一篇 “浮动” 文章中的讲解)。复习点:我们用到清除浮动,因为 box-hd 里面的盒子个数不一定是多少,所以我们就不给高度了,但是里面的盒子浮动会影响下面的布局,因此需要清除浮动。其中,观察到 “首页” 下面有条横线,这是典型的鼠标经过的标签,所以添加关于 hover 的声明。

2024-10-29 21:05:05 775

原创 【论文写作】10.26 讨论

本次讨论主要是对方向的修正,以及一些科研素养的补足。

2024-10-28 16:02:20 442

原创 【网页设计】CSS 浮动

float属性用于创建浮动框,将其移动到一边,直到左边缘或右边缘触及包含块或另一个浮动框的边缘。选择器 { float: 属性值;为什么需要清除浮动?父级没高度。子盒子浮动了。影响下面布局了,我们就应该清除浮动了。

2024-10-22 21:53:21 827

原创 【网页设计】CSS 盒子模型

1. 布局为啥用不同盒子,我只想用div?标签都是有语义的, 合理的地方用合理的标签。比如产品标题 就用 h, 大量文字段落就用p2. 为啥用辣么多类名?类名就是给每个盒子起了一个名字,可以更好的找到这个盒子, 选取盒子更容易,后期维护也方便。3. 到底用 margin 还是 padding?大部分情况两个可以混用,两者各有优缺点,但是根据实际情况,总是有更简单的方法实现。4. 自己做没有思路?布局有很多种实现方式,同学们可以开始先模仿老师的写法,然后再做出自己的风格。

2024-10-15 20:19:31 2261

原创 【论文写作】10.14 讨论心得

何为变量定义?——构建你对语境(最后能够将概念还原到具体的业务场景)常见的方法是,通过构建哑变量,有序变量,比率变量,定距变量。eg. 如何定义智能企业?:智能工程占总工程的比率eg. 如何定义企业的政府依赖变量?:与政府的合作占企业总合作的比率,进政府工程白名单的次数How to 定义?一定要多查为什么要完备的查xxx,形成xxx的定义,是为了给专家 “我就是xxx的专家” 的感觉。话语权关键在于能否说服!从问题,视角出发,让专家有 “诶,他有道理,我们顺着这个看下去”。

2024-10-14 14:55:19 858

原创 【网页设计】CSS Part2

在 CSS 中,可以根据选择器的类型把选择器分为基础选择器和复合选择器,复合选择器是建立在基础选择器之上,对基本选择器进行组合形成的。复合选择器可以更准确、更高效的选择目标元素(标签)复合选择器是由两个或多个基础选择器,通过不同的方式组合而成的常用的复合选择器包括:后代选择器、子选择器、并集选择器、伪类选择器等等作用:网页的标签非常多,在不同地方会用到不同类型的标签,了解他们的特点可以更好的布局我们的网页。元素显示模式就是元素(标签)以什么方式进行显示。

2024-10-10 10:38:54 785

原创 【网页设计】CSS Part1

CSS 的主要使用场景就是美化网页,布局页面的.每个基础选择器都有使用场景,都需要掌握如果是修改样式, 类选择器是使用最多的字体复合属性如何写?里面有什么注意细节?如果让加粗的文字不加粗显示, 如何让倾斜的文字不倾斜显示?行内样式表(行内式)内部样式表(嵌入式)外部样式表(链接式)案例:新闻页面搭建html结构页面.修改CSS样式这里建议多去回顾几次,学习学习 CSS 的编写思路demo参考代码body {h1 {/* 文字不加粗 */

2024-10-08 21:31:55 885

【2023海光杯】“智能储物柜系统”电控部分

【2023海光杯】“智能储物柜系统”电控部分

2023-12-17

FPGA电梯楼层显示(简易)

FPGA电梯楼层显示(简易)

2023-12-17

FPGA篮球比赛计分器

FPGA篮球比赛计分器

2023-12-14

LaTeX学习笔记,简单易懂,相当推荐

LaTeX学习笔记,简单易懂,相当推荐

2023-12-06

FPGA两位显示任意进制计数器(最高100进制)

FPGA两位显示任意进制计数器(最高100进制)

2023-12-04

空空如也

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

TA关注的人

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