- 博客(19)
- 收藏
- 关注
原创 查找算法知识点
原理:从数据结构一端开始,逐个检查元素,直到找到目标或搜索完整个结构。在有序序列A={3,6,15,38,67,69,83}中查找67和97。在有序数组{1,8,10,89,153,1000,1234}中查找23。实例:数列{1,8,10,89,1000,1234}中查找整数。平均:O(n)(假设每个元素被查找概率相等)。最差:O(logn)(目标不存在或数组长)。最坏:O(n)(目标在末端或不存在)。最优:O(1)(第一个元素即为目标)。递归进行,直到找到目标或搜索完整个数组。
2025-09-10 11:39:02
442
原创 排列算法知识点
经过多趟排序后,最终结果为:17, 28, 33, 51, 51, 62, 87, 96。经过多趟排序后,最终结果为:17, 28, 33, 51, 51, 62, 87, 96。逐步插入后,最终结果为:17, 28, 33, 51, 51, 62, 87, 96。初始关键字序列:51, 33, 62, 96, 87, 17, 28, 51。初始关键字序列:51, 33, 62, 96, 87, 17, 28, 51。初始关键字序列:, 33, 62, 96, 87, 17, 28, 51。
2025-09-09 11:14:17
357
原创 递归的知识点概括
递归指函数直接或间接调用自身,将复杂问题分解为相同结构的子问题,直至达到可直接解决的基线条件。递归通过调用栈保存每层函数调用的上下文,栈溢出是深度递归的常见风险。递归条件(Recursive Case):函数调用自身处理更小规模的问题,如factorial(n-1)。基线条件(Base Case):终止递归的条件,如阶乘中的n==1。回归:从基线条件逐层返回结果并合并(如n*(n-1)!问题规模缩减:每次递归需使问题规模向基线条件靠近。时间和空间复杂度较高(如递归调用栈占用内存)。
2025-09-08 11:32:25
229
原创 队列的基本概念
先进先出(FIFO):队列中元素的添加(入队enqueue)和移除(出队dequeue)遵循先进先出的原则。队列不允许的操作:在队头插入、在队尾删除、任意位置插入/删除。获取队头元素(peek/front):访问但不移除队头元素。思路:利用两个栈(输入栈和输出栈)模拟队列的先进先出特性。队头(front):最先入队的元素所在位置。队尾(rear):最后入队的元素所在位置。入队(enqueue):将元素添加到队尾。出队(dequeue):从队头移除元素。栈的进出原则:后进先出(LIFO)
2025-09-05 11:02:33
311
原创 栈的知识点总结
计算机中的栈:栈(stack)是一种特殊的数据结构,用于数据的临时存储,遵循先进后出(FILO,First In Last Out)的原则。线性表:由一系列数据元素组成的有限序列,每个元素有前驱和后继(首元素无前驱,尾元素无后继)。结点API设计:按照面向对象思想,设计结点类描述链表中的节点,结点类可作为链表类的内部类。生活中的栈:栈在生活中的应用如存储货物的仓库或供旅客住宿的客栈,数据在其中可进可出。栈的API设计:涉及栈的初始化、压栈、弹栈、判空等操作接口的设计。
2025-09-05 10:24:19
299
原创 链表知识点
定义:单向链表是由节点组成的线性结构,每个节点包含数据域和指向下一个节点的指针域,通过指针实现逻辑上的连续存储。带头节点:头节点不存数据,head->next初始化为NULL。头指针head指向链表的第一个节点,尾节点next为NULL。遍历:从头节点开始,通过next指针依次访问节点。尾插法:需遍历至尾节点,更新尾节点next。头插法:新节点指向原头节点,更新head。优点:动态扩展、插入/删除高效、内存灵活。不带头节点:head直接指向首节点。尾删:需遍历至倒数第二个节点。
2025-09-04 12:13:43
188
原创 线性表知识点
链式存储:不要求逻辑上相邻的结点物理上也相邻,结点间的逻辑关系由附加的指针字段表示。定义:使用数组实现的数据结构,逻辑上相邻的元素物理存储位置也相邻。链表:逻辑上相邻的元素物理存储位置不一定相邻,通过指针链接实现。顺序存储:逻辑上相邻的结点存储在物理位置上相邻的存储单元里。顺序表:逻辑上相邻的元素物理存储位置也相邻,使用数组实现。前驱元素:若A元素在B元素的前面,则称A为B的前驱元素。后继元素:若B元素在A元素的后面,则称B为A的后继元素。缺点:插入和删除元素时需要移动大量元素,效率低。
2025-09-04 12:04:30
362
原创 数据结构和算法概述
常见的时间复杂度:O(1)、O(logn)、O(n)、O(n^2)、O(n^3)、O(2^n)等。算法与程序、数据结构的关系:程序 = 算法 + 数据结构,算法 = 逻辑 + 控制。定义:用来组织和存储数据的方法,以便高效地访问和修改数据。描述语言:自然语言、数学语言、流程图、程序设计语言等。物理结构:顺序存储、链式存储、散列存储、索引存储等。逻辑结构:集合结构、线性结构、树形结构、图形结构。可读性:思路清晰、层次分明、易于阅读和修改。特征:输入、输出、确定性、有限性。答案:O(n^2logn)
2025-09-01 11:50:04
252
原创 If语句的应用
要让 if-then 系列语句发挥作用,离不开条件测试命令。这些命令能够检查数值大小、字符串内容、文件状态等多种情况,为脚本提供判断依据。
2025-07-11 10:57:32
1284
原创 Shell脚本的相关内容
用户定义变量:在脚本中定义自己的变量,使用VARIABLE_NAME=value格式,变量名区分大小写,等号和值之间不能有空格。)将多个命令放在同一行执行,或使用管道符(|)将命令的输出作为另一个命令的输入。echo命令:用于在脚本中显示消息,echo -n选项可以将消息和后续命令的输出显示在同一行。命令替换:将命令的输出赋给变量,使用反引号(`COMMAND`)或$(COMMAND)格式。exit命令:允许在脚本结束时指定一个退出状态码,默认是脚本中最后一个命令的退出状态码。
2025-07-11 10:33:12
253
原创 Linux环境变量:概念理解与知识框架
类比理解:如同手机的"设置"应用,环境变量就是系统的各种设置项,不同的应用(进程)可以读取这些设置来决定自己的行为。/etc/profile->>~/.bash_profile: 2. 然后执行。~/.bash_profile->>~/.bashrc: 3. 通常会调用。组织逻辑:系统目录(/bin)在前,用户目录(~/.local/bin)在后。~/.bashrc->>/etc/bashrc: 4. 最后执行。用户登录->>/etc/profile: 1. 首先执行。
2025-07-08 11:36:09
1435
原创 Shell的知识点
进程关系:理解Shell进程的启动、终止,以及父子进程间的联系。类型:包括Bash、Zsh、Ksh等,每种有其独特特性。内建命令:如cd、echo,直接在Shell内部执行。外部命令:如ls、grep,需调用外部程序。alias:创建命令别名,简化操作。history:查看命令历史记录。脚本模式:通过脚本文件执行命令。交互式模式:用户直接输入命令。非交互式模式:如后台运行任务。
2025-07-07 11:35:18
137
原创 命令及主要参数
主要符号:>(输出重定向),>>(追加输出),<(输入重定向)。用途:基于共同字段合并文件,常用于合并排序后的文件。主要参数:-n(不换行),-e(启用转义字符)。用途:将前一个命令的输出作为后一个命令的输入。用途:合并文件的列,按行拼接。用途:输出文本到标准输出。用途:控制数据流向。
2025-07-07 11:02:54
174
原创 Linux命令用途及主要参数
tar和gzip:压缩和解压。tar -czf archive.tar.gz dir(压缩),tar -xzvf archive.tar.gz(解压)。mount和umount:挂载和卸载文件系统。ps和top:用于查看系统进程状态。主要参数:ps -ef(全格式显示)。df和du:查看磁盘空间。df -h(人类可读),du -sh(总结大小)。主要参数:-i(忽略大小写),-c(计数匹配行)。主要参数:-n(按数值排序),-r(逆序)。使用进程ID,主要参数:-9(强制终止)。
2025-07-07 09:09:07
277
原创 总结Linux基础知识点框架
more、less:分页显示文件内容,less更灵活。tail、head:分别查看文件末尾和开头部分。rm:删除文件或目录,-r递归删除,-f强制删除。ls:列出目录内容,可加参数如-l显示详细信息。mv:重命名文件或移动文件,-i覆盖前提示。cd:切换目录,无参数时返回用户主目录。touch:创建空文件或更新文件时间戳。cp:复制文件或目录,-r递归复制目录。mkdir:创建目录,-p可递归创建。cat:连接并显示文件内容。rmdir:删除空目录。
2025-07-07 08:51:32
235
原创 ①了解什么是SSH连接协议②总结Xshell连接虚拟机的步骤③以及过程中可能出现的错误、分析错误原因及解决方案④过程中的结果截图等⑤了解如何使用Xftp传输文件
是一种网络协议,主要用于在不安全的网络中提供安全的远程登录和命令执行环境。SSH协议基于客户端-服务器模型设计,主要目的是为用户提供数据加密、身份验证以及消息完整性检查等功能,确保用户能够在网络上安全地访问另一台计算机。SSH协议主要用于Linux和Unix系统上的远程登录和命令行控制,同时也可用于文件传输和其他安全网络服务12。
2025-07-01 21:19:04
176
原创 Linux操作系统安装指南
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。Linux是一套免费使用和自由传播的类Unix操作系统,具有多用户、多任务、支持多线程和多CPU的特性。网络功能强大:支持多种网络协议、防火墙、负载均衡等,是服务器和网络设备的理想选择。跨平台支持:可运行不同操作系统,如Windows、Linux、BSD等。硬件仿真:模拟完整的计算机硬件系统,包括处理器、内存、存储等。
2025-06-30 11:50:27
433
原创 直询Linux相关职业,例如Linux运维工程师,Linux做入式开发工程师的招聘要求
Linux运维工程师是目前IT行业中的重要岗位,主要负责企业Linux系统的配置、管理和优化工作。两类岗位都要求扎实的Linux基础,但运维更侧重系统管理和自动化,而嵌入式开发更注重底层编程和硬件交互能力。熟悉Linux系统(如Debian、RHEL、CentOS等)的配置管理和常用命令。核心技能 系统管理/脚本/容器化 C/C++/驱动开发/硬件交互。精通C/C++语言,熟悉多线程、多进程、内存共享、网络通信编程技术。熟悉TCP/IP协议,熟悉交换机、防火墙、负载均衡等设备调试。
2025-06-30 11:45:36
614
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅