自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 第3章 运算方法和运算部件

C语言中的按位运算包括按位或运算(|)、按位与运算(&)、按位取反运算(~)、按位异或运算(^)等。按位运算一个重要运用就是实现掩码操作,通过与给定的一个位模式进行按位与们可以提取所需要的位,然后可以对这些位进行“置1”“清0”“1测试”或“0测试”等。左移时,高位移出,低位补0,如果移出的高位不同于移位后的符号位,即左移前、后符号位不同,则发生溢出;逻辑移位不考虑符号位,总是高(低)位移出,低(高)位补0.对于无符号整数应采用逻辑移位,逻辑左移时,若最高位移出的是1,则发生溢出。4.位扩展和位截断运算。

2025-03-27 16:04:52 307

原创 2.5 数据的宽度和存储

任何信息在计算机中用二进制进行编码后,得到的都是一串0/1序列,每8位构成一个字节,不同的数据类型具有不同的字节宽度。CPU内部数据通路是指CPU内部的数据流经的路径以及路径上的部件,主要包括用于运算的ALU和用于存储中间结果的通用寄存器等,这些部件的宽度一致才能相互匹配。不同的计算机,字的长度和组成不完全相同,有的由2字节组成,有的由4、8甚至16字节组成。字和字长的概念不同,字用来表示被处理信息的单位,用来度量各种数据类型的宽度。根据各字节在连续存储单元中排列顺序的不同,有两种排列方式:大端和小端,

2025-03-25 15:26:33 279

原创 2.2 整数表示

尾数用原码表示,第一位总为1,因而可在尾数中缺省第一位的1,称为隐藏位,使得单精度格式的23位尾数实际上表示的24位有效数字,双精度格式的52位尾数实际表示了53位有效数字。R是基数,可以约定为2,4,16等。将十六进制或八进制数转换成二进制数时,只要按照对应关系,把每一个十六进制或八进制数字改写成等值的4位或3位二进制数即可,且保持高低位顺序不变。指数用阶码表示,偏置常数不是通常的2^n-1,而是(2^n-1)-1,因此,单精度和双精度浮点数的偏置常数分别为127和1023.

2025-03-25 15:05:25 490

原创 第七章 狄克斯特拉算法

计算非加权图的最短路径,可使用广度优先搜索。要计算加权图中的最短路径,可使用狄克斯特拉算法。狄克斯特拉算法用于每条边都有关联数字的图,这些数字称为权重。带权重的图称为加权图,不带权重的图称为非加权图。不能将狄克斯特拉算法用于包含负权边的图。狄克斯特拉算法找出的是总权重最小的路径。

2025-03-21 22:43:24 311

原创 第二章 信息的表示和处理

对于一个位表示为[x_w-1,w_w-2...,x_1,x_0]的操作数x,C表达式x<<k会生成一个值,也就是x向左移动k位,对其最高的k位,并在末尾k位补0.考虑一个w位的整数,其位表示为[x_w-1,w_w-2...,x_1,x_0],其中x_w-1为最高有效位,而x_0为最低有效位。大多数计算机使用8位的快,或者字节,作为最小的可寻址的内存单位,而不是访问内存中单独的位。在几乎所有的机器上,多字节对象都被存储为连续的字节序列,对象的地址为所使用字节中最小的地址。2.1.8C语言中的逻辑运算。

2025-03-21 16:11:45 255

原创 现代操作系统阅读笔记(一)

在fork时,所有的变量具有一样的值,虽然父进程的数据被复制用以创建子进程,但是其中的一个后续变化不会影响到另一个。在用户态下,只使用了机器指令中的一个子集。在时间多路复用CPU中,操作系统经常会中止正在运行的某个程序并启动(或再启动)另一个程序,每次停止一个运行的程序时,操作系统必须保存所有 的寄存器值,这样在稍后该程序被再次运行时,可以把这些寄存器重新装入。在许多操作系统中,与一个进程有关的所有信息,除了该进程自身地址空间的内容以外,均放在操作系统的一章表里,称为进程表,进程表时数组(或链表)结构。

2025-03-15 16:23:57 854

原创 广度优先搜索

图不过是一系列的节点和边,因此在Python中,只需使用上述代码就可以表示一个图。我们首先需要添加顺序查找,对此我们使用队列,因为队列有先进先出的特性。图分为有向图和无向图,有向图的关系是单项的,无向图的关系是双向的。而实现图,我们使用之前说过的散列表,散列表能让我们将键映射到值。运行时间为O(人数+边数),通常写作O(V+E)2.从节点A出发,前往节点B的哪条路径最短。1.从节点A出发,有前往节点B的路径吗?第一个问题就是由一点向外延申,进行遍历。实现算法(查找最短路径)

2025-03-13 21:38:26 234

原创 散列函数-

关于散列函数总是将不同的键映射到数组的不同位置,实际上,几乎不可能编写出这样的散列函数。对于分配到同一位置的情况,我们称之为冲突。处理冲突最简单的方法是在冲突位置存储一个链表。使用散列函数和数组创建了一种被称为散列表的数据结构。python提供的散列表实现为字典。由于冲突的原因,如果链表很长(冲突位置上的链表)——我们需要有。1.散列函数总是将同样的输入映射到相同的索引。3.散列函数知道数组有多大,只返回有效的索引。2.散列函数将不同的输入映射到不同的索引。1.较好的填装因子。2.良好的散列函数。

2025-03-11 21:48:14 264

原创 快速排序-

所谓快速排序就是,在一堆杂乱无序的数字中,取一个数字做为基准值,以基准值为界限,大的和小的分到两边,然后再各自递归的进行快速排序。快速排序的时间复杂度为O(n*logn)

2025-03-08 21:54:59 141

原创 力扣35.搜索插入位置-二分查找

【代码】力扣35.搜索插入位置-二分查找。

2025-03-07 21:09:45 523

原创 递归—基础算法

#基线条件和递归条件#每个递归函数都有两部分:基线条件和递归条件。递归条件指的是函数调用自己,而基线条件则指的是函数不再调用自己,从而避免形成无限循环。#栈:栈是一种数据结构,它是一种线性数据结构,只能在一端进行插入和删除操作,另一端是栈顶。栈的特点是先进后出,也就是说,最新添加的元素在栈顶,最先删除的元素在栈底。#调用栈:计算机在内部使用被称为调用栈的栈。调用栈是用来存储函数调用信息的栈。每当一个函数被调用时,系统就将函数的返回地址和参数压入调用栈,当函数返回时,系统从调用栈中弹出返回地址和参数,并

2025-03-06 22:29:10 204

原创 【无标题】

数组是一种线性数据结构,用一组连续的内存空间存储数据,可以随机访问,插入和删除元素的效率很高。#数组是一种线性数据结构,用一组连续的内存空间存储数据,可以随机访问,插入和删除元素的效率很高。#数组的读取操作时间复杂度为O(1),而链表的读取操作时间复杂度为O(n)。#数组的插入操作时间复杂度为O(n),而链表的插入操作时间复杂度为O(1)。#数组的删除操作时间复杂度为O(n),而链表的删除操作时间复杂度为O(1)。#数组的空间复杂度为O(n),而链表的空间复杂度为O(n)。时间复杂度为O(n^2)

2025-03-06 21:54:31 204

原创 【无标题】

二分查找的时间复杂度为O(logn),即使列表很大,也能在较短的时间内找到结果。#1.二分查找是在有序数组(列表)中进行检索是所用。#代码:背景为猜数字。

2025-03-06 21:10:35 134

原创 计算机组成与系统结构—袁春风阅读笔记(一)

每个存储单元有一个编号称为地址,通常一个存储单元存放一个字节(8位),因此,每条指令可能可能占用多个存储单元,一个操作数也会占用多个存储单元,指令的地址和操作数的地址都是指一组连续存储单元中最小的地址。将PC的内容送MAR,MAR中的内容直接送地址线,同时,控制器将读信号送读/写信号线,主存根据地址线上的地址和读信号,从指定存储单元开始读出指令,并送到数据线上,MDR从数据线接受指令信息,并传送到IR中。(2)时钟频率:CPU的主频就是CPU中的主脉冲信号的时钟频率,是CPU时钟周期的倒数。

2025-03-06 16:50:04 1633

原创 机器学习—赵卫东阅读笔记(一)

常见的无监督学习算法有聚类和关联分析等,在人工神经网络中,自组织映像和适应谐振理论是最常用的无监督学习。3.聚类:聚类是一种探索性分析,在未知数据结构的情况下,根据相似性把样本分为不同的簇或子集,不同簇的样本具有很大的差异性,从而发现数据的类别与结构。1.分类算法——是应用分类规则对记录进行目标映射,将其划分到不同的分类中,构建具有泛能力的算法模型,即构建映射规则来预测未知样本的类别。聚类方法可分为基于层次的模型、基于划分的聚类、基于密度的聚类、基于约束的聚类、基于网络的聚类等。

2025-03-05 22:46:08 944

原创 python官方文档阅读整理(一)

除了 int 和 float,Python 还支持其他数字类型,例如 Decimal 或 Fraction。注释可以在行开头,或空白符与代码之后,但不能在字符串里面。字符串支持索引(下标访问),第一个字符的索引是0.单字符没有专用的类型,就是长度为一的字符串。省略开始索引时,默认值为0,省略结束索引时, 默认为到字符串的结尾。如果不希望前置\的字符转义成特殊字符,可以使用原始字符串,在引号前添加r即可。运算符+,-,*,/可被用来执行算术运算;注意,-0 和 0 一样,因此,负数索引从 -1 开始。

2025-03-04 22:01:01 974

原创 231.2的幂

【代码】231.2的幂。

2025-03-03 18:55:53 118

原创 At395 第二题

打印出N*N的以下图形。

2025-03-02 21:08:39 168

原创 力扣 3461.判断操作后字符串中的数字是否相等

给你一个由数字组成的字符串 s。如果 s 最后剩下的两个数字 相同 ,返回 true。否则,返回 false。从第一个数字开始,对于 s 中的每一对连续数字,计算这两个数字的和 模 10。用计算得到的新数字依次替换 s 的每一个字符,并保持原本的顺序。

2025-03-01 16:34:40 239

原创 力扣 26 删除有序数组中的重复项

给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致。然后返回 nums 中唯一元素的个数。# 更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。nums的其余元素与 nums 的大小不重要。

2025-02-28 21:41:34 116

原创 力扣 1275.找出井字棋的获胜者

【代码】力扣 1275.找出井字棋的获胜者。

2025-02-12 14:50:08 274

原创 力扣657题

【代码】力扣657题。

2025-01-23 17:12:12 127

原创 力扣682

【代码】力扣682。

2025-01-18 15:44:24 216

原创 力扣709.转换成小写字母

【代码】力扣709.转换成小写字母。

2025-01-07 16:32:06 434

原创 力扣58.最后一个单词的长度

【代码】力扣58.最后一个单词的长度。

2025-01-07 15:48:22 145

原创 力扣13罗马数字转整数

【代码】力扣13罗马数字转整数。

2025-01-06 19:34:02 393

原创 力扣896

【代码】力扣896。

2025-01-06 19:15:50 383

原创 力扣1502判断能否形成等差数列

【代码】力扣1502判断能否形成等差数列。

2025-01-06 18:59:29 471

原创 力扣1822.数组元素积的符号

【代码】力扣1822.数组元素积的符号。

2025-01-05 16:32:34 333

原创 力扣66 加一

【代码】力扣66 加一。

2025-01-05 15:57:15 219

原创 力扣283 移动零

【代码】力扣283 移动零。

2025-01-04 16:48:51 351

原创 力扣459 重复的字符串

【代码】力扣459 重复的字符串。

2025-01-04 16:11:28 293

原创 力扣242.有效的字母异位词

【代码】力扣242.有效的字母异位词。

2025-01-03 22:20:53 331

原创 力扣28找出字符串中第一个匹配项的下标

【代码】力扣28找出字符串中第一个匹配项的下标。

2025-01-03 21:48:57 549

原创 力扣第389题—找不同

【代码】力扣第389题—找不同。

2025-01-03 21:10:36 285

原创 力扣编程从0-1

【代码】力扣编程从0-1。

2025-01-02 16:27:54 705

原创 C中的结构体类型

【代码】C中的结构体类型。

2025-01-02 11:42:21 140

原创 指针基础认识

指针——即为了方便我们访问内存而产生的工具,我们通过指针变量来存储地址。

2025-01-02 11:10:03 106

原创 define定义宏和变量

【代码】define定义宏和变量。

2025-01-02 10:17:47 227

原创 Python元组

有序的不可变的元素集合,和列表的区别就是,元组元素不能修改。

2024-12-30 13:17:40 168

空空如也

空空如也

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

TA关注的人

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