算法思想之位运算(一)
欢迎拜访:雾里看山-CSDN博客
本篇主题:算法思想之位运算(一)
发布时间:2025.4.12
隶属专栏:算法
目录
- 滑动窗口算法介绍
- 六大基础位运算符
- 常用模板总结
- 例题
- 位1的个数
- 题目链接
- 题目描述
- 算法思路
- 代码实现
- 比特位计数
- 题目链接
- 题目描述
- 算法思路
- 代码实现
- 只出现一次的数字
- 题目链接
- 题目描述
- 算法思路
- 代码实现
- 只出现一次的数字 II
- 题目链接
- 题目描述
- 算法思路
- 代码实现
- 只出现一次的数字 III
- 题目链接
- 题目描述
- 算法思路
- 代码实现
滑动窗口算法介绍
位运算(Bit Manipulation
)是算法中的高效技巧,通过直接操作二进制位实现快速计算和优化存储
六大基础位运算符
运算符 | 符号 | 描述 | 示例 |
---|---|---|---|
按位与 | & | 两数二进制位同为1时结果为1 | 5 & 3 → 1 (101 & 011 = 001) |
按位或 | | | 任一位为1时结果为1 | 5 | 3→7 (101 | 011 = 111) |
按位异或 | ^ | 两数位不同时结果为1 ,无进位相加 | 5 ^ 3 → 6 (101 ^ 011 = 110) |
按位取反 | ~ | 0变1,1变0 | ~5 → -6(补码表示) |
左移 | << | 左移指定位数,低位补0 | 5 << 1 → 10 (101→1010) |
右移 | >> | 右移指定位数,高位补符号位(算术右移) | -5 >> 1 → -3 |
常用模板总结
功能 | 代码模板 |
---|---|
判断奇偶 | x & 1 → 1为奇,0为偶 |
取最低位的1 | x & (-x) |
消去最低位的1 | x & (x - 1) |
异或交换变量 | a ^= b; b ^= a; a ^= b; |
生成所有子集 | for (mask = 0; mask < (1 << n); mask++) |
快速幂 | 右移指数,逐位判断累乘 |
例题
位1的个数
题目链接
191. 位1的个数
题目描述
给定一个正整数
n
,编写一个函数,获取一个正整数的二进制形式并返回其二进制表达式中 设置位 的个数(也被称为汉明重量)。
示例 1:输入:n = 11
输出:3
解释:输入的二进制串 1011 中,共有 3 个设置位。示例 2:
输入:n = 128
输出:1
解释:输入的二进制串 10000000 中,共有 1 个设置位。示例 3:
输入:n = 2147483645
输出:30
解释:输入的二进制串 1111111111111111111111111111101 中,共有 30 个设置位。提示:
1 <= n <= 231 - 1
进阶:
如果多次调用这个函数,你将如何优化你的算法?
算法思路
直接使用模板中消去最低位的1,直到变量为零,用一个变量计算次数即可。
代码实现
class Solution {
public:int hammingWeight(int n) {int ret = 0;while(n){n&=(n-1);ret++;}return ret;}
};
比特位计数
题目链接
338. 比特位计数
题目描述
给你一个整数
n
,对于0 <= i <= n
中的每个i
,计算其二进制表示中1
的个数 ,返回一个长度为n + 1
的数组ans
作为答案。
示例 1:输入:n = 2
输出:[0,1,1]
解释:
0 --> 0
1 --> 1
2 --> 10示例 2:
输入:n = 5
输出:[0,1,1,2,1,2]
解释:
0 --> 0
1 --> 1
2 --> 10
3 --> 11
4 --> 100
5 --> 101提示:
0 <= n <= 105
进阶:
- 很容易就能实现时间复杂度为
O(n log n)
的解决方案,你可以在线性时间复杂度O(n)
内用一趟扫描解决此问题吗?- 你能不使用任何内置函数解决此问题吗?(如,
C++
中的__builtin_popcount
)
算法思路
遍历一遍数组,对于每个数,直接使用模板中消去最低位的1,直到变量为零,用一个变量计算次数即可。
代码实现
class Solution {
public:vector<int> countBits(int n) {vector<int> ans(n+1);for(int i = 0; i <= n; i++){int count = 0, num = i;while(num){num&=(num-1);count++;}ans[i] = count;}return ans;}
只出现一次的数字
题目链接
136. 只出现一次的数字
题目描述
给你一个 非空 整数数组
nums
,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。
示例 1 :
输入:nums = [2,2,1]
输出:1示例 2 :
输入:nums = [4,1,2,1,2]
输出:4示例 3 :
输入:nums = [1]
输出:1提示:
1 <= nums.length <= 3 * 104
-3 * 104 <= nums[i] <= 3 * 104
- 除了某个元素只出现一次以外,其余每个元素均出现两次。
算法思路
- 任何数和
0
做异或运算,结果仍然是原来的数,即a^0=a
。 - 任何数和其自身做异或运算,结果是
0
,即a^a=0
。 - 异或运算满足交换律和结合律,即
a^b^a=b^a^a=b^(a^a)=b^0=b
。
代码实现
class Solution {
public:int singleNumber(vector<int>& nums) {int ret = 0;for(auto num : nums){ret ^= num;}return ret;}
};
只出现一次的数字 II
题目链接
137. 只出现一次的数字 II
题目描述
给你一个整数数组
nums
,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。
你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。
示例 1:输入:nums = [2,2,3,2]
输出:3示例 2:
输入:nums = [0,1,0,1,0,1,99]
输出:99
提示:
1 <= nums.length <= 3 * 104
-231 <= nums[i] <= 231 - 1
nums
中,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次
算法思路
设要找的数位 ret
。
由于整个数组中,需要找的元素只出现了一次,其余的数都出现的三次,因此我们可以根据所有数的某一个比特位的总和 %3
的结果,快速定位到 ret
的一个比特位上的值是0
还是 1
。
这样,我们通过 ret
的每一个比特位上的值,就可以将 ret
给还原出来。
代码实现
class Solution {
public:int singleNumber(vector<int>& nums) {int num = 0;for(int i = 0; i < 32; i++){int count = 0;for(auto n : nums){count += ((n>>i)&1);}if(count % 3)num |= (1<<i);}return num;}
};
只出现一次的数字 III
题目链接
260. 只出现一次的数字 III
题目描述
给你一个整数数组
nums
,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。
你必须设计并实现线性时间复杂度的算法且仅使用常量额外空间来解决此问题。
示例 1:输入:nums = [1,2,1,3,2,5]
输出:[3,5]
解释:[5, 3] 也是有效的答案。示例 2:
输入:nums = [-1,0]
输出:[-1,0]示例 3:
输入:nums = [0,1]
输出:[1,0]提示:
2 <= nums.length <= 3 * 104
-231 <= nums[i] <= 231 - 1
除两个只出现一次的整数外,nums 中的其他数字都出现两次
算法思路
出现两次的数异或操作后会抵消,而两个不相等的数异或后的结果,必有一个比特位是为1
的,我们根据这个比特位将所有数据分为两组。即可得出这两个数。
- 将所有数进行异或操作,异或后的结果中不为零的比特位即为区分点
- 通过找出的区分点,找出两个数。
代码实现
class Solution {
public:vector<int> singleNumber(vector<int>& nums) {int num = 0;for(auto n : nums){num ^= n;}// 通过最低位的1将数据分为两组int l = (num==INT_MIN ? num : num&(-num));int sum1 = 0, sum2 = 0;for(auto n : nums){if(n & l)sum1^=n;elsesum2^=n;}return {sum1, sum2};}
};
⚠️ 写在最后:以上内容是我在学习以后得一些总结和概括,如有错误或者需要补充的地方欢迎各位大佬评论或者私信我交流!!!
相关文章:
算法思想之位运算(一)
欢迎拜访:雾里看山-CSDN博客 本篇主题:算法思想之位运算(一) 发布时间:2025.4.12 隶属专栏:算法 目录 滑动窗口算法介绍六大基础位运算符常用模板总结 例题位1的个数题目链接题目描述算法思路代码实现 比特位计数题目链接题目描述…...
十八、TCP多线程、多进程并发服务器
1、TCP多线程并发服务器 服务端: #include<stdio.h> #include <arpa/inet.h> #include<stdlib.h> #include<string.h> #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> #include <pthread.h>…...
『生成内容溯源系统』详解
生成内容溯源系统详解 1. 定义与核心目标 生成内容溯源系统(Generative Content Provenance System)是指能够追踪AI生成内容的来源、生成过程、版权归属及修改历史的技术体系。其核心目标是: 验证真实性:证明内容由特定AI模型生…...
mac 解压 nsz 文件
nsz 地址 下载 nsz PIP 套餐 使用以下命令安装仅限 Console 的版本: pip3 install --upgrade nsz使用以下命令安装 GUI 版本: pip3 install --upgrade nsz[gui]解压 nsz 文件 nsz -D 文件路径...
Python进阶(3):函数(接上篇)
上一篇我们初步介绍python中函数的定义与调用 Python进阶(2):函数-CSDN博客 这里继续: 关键字参数: 形参1实参1,形参2实参2,...... 关键字参数是指使用形式参数的名字来确定输入的参数值。通过该方式指定实际参数时,不再需要与形式参数的位置完全一致。只要将参数名写正确…...
卒/兵过河前的判断和走法触发器优化
兵(卒):兵(卒)在未过河前,只能向前一步步走,过河以后,除不能后退外,允许左右移动,但也只能一次一步。 迷你世界地图已上传 优化...
生物信息Rust-01
前言-为什么想学Rust? 一直想多学一门编译语言,主要有几个原因吧(1. 看到一位老师实验室要求需要掌握一门编译语言;2. 自己享想试着开发一些实用的生信工具,感觉自己现在相比于数据分析,探索生物学层面的意…...
基于HTML + jQuery + Bootstrap 4实现(Web)地铁票价信息生成系统
地铁票价信息表生成系统 1. 需求分析 1.1 背景 地铁已经成为大多数人出行的首选,北京地铁有多条运营线路, 截至 2019 年 12 月,北京市轨道交通路网运营线路达 23 条、总里程 699.3 公里、车站 405 座。2019 年,北京地铁年乘客量达到 45.3 亿人次,日均客流为 1241.1 万人次…...
智慧水务项目(八)基于Django 5.1 版本PyScada详细安装实战
一、说明 PyScada,一个基于Python和Django框架的开源SCADA(数据采集与监视控制系统)系统,采用HTML5技术打造人机界面(HMI)。它兼容多种工业协议,如Modbus TCP/IP、RTU、ASCII等,并具…...
DeepSeek在消防救援领域的应用解决方案
DeepSeek在消防救援领域的应用解决方案 一、火灾风险动态感知与早期预警 火灾风险动态感知与早期预警是智慧消防的关键环节,DeepSeek通过多模态数据分析,融合烟雾传感器、热成像摄像头和气体浓度检测等数据,能够识别传统阈值法难以捕捉的火…...
VSCode CMake调试CPP程序
文章目录 1 安装C与CMake插件2 配置CMakeLists.txt3 使用CMake编译调试3.1 编译3.2 调试 4 自定义构建调试参考 1 安装C与CMake插件 C插件 CMake插件 2 配置CMakeLists.txt 编写测试程序 #include<iostream>int main(int argc, char const *argv[]) {int a 1, b 2;i…...
AI Agent工程师认证-学习笔记(3)——【多Agent】MetaGPT
学习链接:【多Agent】MetaGPT学习教程 源代码链接(觉得很好,star一下):GitHub - 基于MetaGPT的多智能体入门与开发教程 MetaGPT链接:GitHub - MetaGPT 前期准备 1、获取MetaGPT (1ÿ…...
Spring AI 结构化输出详解
一、Spring AI 结构化输出的定义与核心概念 Spring AI 提供了一种强大的功能,允许开发者将大型语言模型(LLM)的输出从字符串转换为结构化格式,如 JSON、XML 或 Java 对象。这种结构化输出能力对于依赖可靠解析输出值的下游应用程…...
AMGCL库使用示例
AMGCL库使用示例 AMGCL是一个用于解决大规模稀疏线性方程组的C库,它实现了代数多重网格(AMG)预处理器和Krylov子空间迭代求解器。下面是一些AMGCL的使用示例。 基本示例:求解稀疏线性系统 #include <iostream> #include <vector> #includ…...
关于 Java 预先编译(AOT)技术的详细说明,涵盖 GraalVM 的配置、Spring Boot 3.x 的集成、使用示例及优缺点对比
以下是关于 Java 预先编译(AOT)技术的详细说明,涵盖 GraalVM 的配置、Spring Boot 3.x 的集成、使用示例及优缺点对比: 1. 预先编译(AOT)技术详解 1.1 核心概念 AOT(Ahead-of-Time)…...
Video Encoder:多模态大模型如何看懂视频
写在前面 大型语言模型(LLM)已经掌握了理解文本的超能力,而多模态大模型(MLLM)则更进一步,让 AI 拥有了“看懂”图像的眼睛。但这还不够!真实世界是动态的、流动的,充满了运动、变化和声音。视频,正是承载这一切动态信息的关键媒介。 让 LLM 看懂视频,意味着 AI 需…...
leetcode0622. 设计循环队列-medium
1 题目:设计循环队列 官方标定难度:中 设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。 循环队列的一…...
专题十四:动态路由——OSPF
一、OSPF简介 开放式最短路径优先OSPF(Open Shortest Path First)是IETF组织开发的一个基于链路状态的内部网关协议(Interior Gateway Protocol),采用DIjkstra算法,协议号是89。用于自治系统(A…...
【蓝桥杯】第十六届蓝桥杯 JAVA B组记录
试题 A: 逃离高塔 很简单,签到题,但是需要注意精度,用int会有溢出风险 答案:202 package lanqiao.t1;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWrit…...
一个项目的架构演进
1,单体架构 垂直升级:4核16GB -> 8核64G 水平扩展:一台服务器扩展成多台 存在以下几个问题 1,提升的性能是有限的 2,更新,维护成本非常高,对于系统中要修改或增加的功能,整个发…...
创建虚拟环境无法加载到pycharm当conda环境,只能为python环境
conda create -n myenv python3.8 然后,在pycharm中,点击 ..." 按钮并浏览到您的 Conda 环境路径。通常,Conda 环境路径位于 ~/.conda/envs/<Your Environment Name> 或 ~/miniconda3/envs/<Your Environment Name> 或 ~/an…...
暴雨打造智能化时代源动力
当清晨的智能管家为您调节室温、日间数字员工自动生成会议纪要、深夜AI外教仍在纠正发音……这不是科幻片,2025年的世界正被智能体悄然重塑。这些能听会想的数智化助理,正在医疗会诊、工业质检、金融风控等多个领域创造着价值。 那么,智能体…...
【ROS2】行为树:BehaviorTree
1、简介 与状态机不同,行为树强调执行动作,而不是状态之间的转换。 行为树是可组合的。可以重复使用简单的行为来构建复杂的行为。 在游戏领域,行为树已经比较流行了。主要用于维护游戏角色的各种动作和状态。 ROS2的导航框架Navigation2中引入了行为树来组织机器人的工作流…...
【HTTP】:应用层协议HTTP(1)
1.HTTP协议 虽然我们说,应用层协议是我们程序猿自己定的.但实际上,已经有大佬们定义了一些现成的,又非常好用的应用层协议,供我们直接参考使用.HTTP(超文本传输协议)就是其中之一。 在互联网世界中,HTTP(HyperTextTransfer Protocol,超文本…...
Boost Graph Library (BGL) 介绍与使用示例
Boost Graph Library (BGL) 介绍与使用示例 Boost Graph Library (BGL) 是 Boost 库中用于图论计算的模块,提供了处理图数据结构的通用接口和多种图算法实现。 BGL 主要特性 提供多种图表示方式:邻接表、邻接矩阵等包含常用图算法:DFS、BF…...
数据结构--线性表
单链表的基本操作 1.清空单链表 链表仍然存在,但链表中无元素,成为空链表(头指针和头链表仍存在)算法思路:依次释放所有结点,并将头结点指针设置为空 2.返回表长 3.取值–取单链表中第i个元素 因为存储…...
电商用户购物行为分析:基于K-Means聚类与分类验证的完整流程
随着电商行业的快速发展,用户行为分析成为企业优化营销策略、提升用户体验的重要手段。通过分析用户的购物行为数据,企业可以挖掘出用户群体的消费特征和行为模式,从而制定更加精准的营销策略。本文将详细介绍一个基于Python实现的电商用户购物行为分析系统,涵盖数据预处理…...
《车辆人机工程-汽车驾驶显示装置》实验报告
汽思考题 汽车显示装置有哪些? 汽车显示装置是车辆与驾驶员、乘客交互的重要界面,主要用于信息展示、功能控制和安全辅助。以下是常见的汽车显示装置分类及具体类型: 一、驾驶舱核心显示装置 1. 仪表盘(Instrument Cluster&am…...
三维点云投影二维图像的原理及实现
转自个人博客:三维点云投影二维图像的原理及实现 1. 概述 1.1 原理概述 三维点云模型是由深度相机采集深度信息和RGB信息进行生成的,深度相机能直接获取到深度图和二维RGB图像,也就是说利用相机原本的关系就可以把深度信息投影回二维图像&a…...
使用Golang打包jar应用
文章目录 背景Go 的 go:embed 功能介绍与打包 JAR 文件示例1. go:embed 基础介绍基本特性基本语法 2. 嵌入 JAR 文件示例项目结构代码实现 3. 高级用法:嵌入多个文件或目录4. 使用注意事项5. 实际应用场景6. 完整示例:运行嵌入的JAR 背景 想把自己的一个…...
MySQL数据过滤、转换与标准化
数据处理是数据库操作的重要组成部分,尤其是在大量数据中查找、转换和规范化目标信息的过程中。为了确保数据的有效性与一致性,MySQL提供了一系列数据过滤、转换与标准化的功能。 本教程将深入探讨数据过滤和转换的基本方法及应用,内容涵盖数…...
Linux中安装sentinel
拉取镜像 #我默认拉取最新的 sentinel 镜像 docker pull bladex/sentinel-dashboard 创建容器 docker run --name sentinel -d -p 8858:8858 bladex/sentinel-dashboard 检查是否成功 docker ps 浏览器访问 默认账号密码是 sentinel/sentinel 成功了 开放sentinel端口或者关…...
大模型压缩训练(知识蒸馏)
AI的计算结果不是一个数值,而是一个趋势 一、模型压缩简介 1、深度学习(Deep Learning)因其计算复杂度或参数冗余,在一些场景和设备上限制了相应的模型部署,需要借助模型压缩、优化加速、异构计算等方法突破瓶颈。 …...
Matlab绘制函数方程图形
Matlab绘制函数方程图形: 多项式计算: polyval 函数 Values of Polynomials: polyval ( ) 绘制方程式图形: 代码如下: >> a[9,-5,3,7]; x-2:0.01:5; fpolyval(a,x); plot(x,f,LineWidth,2); xlabel(x); ylabel(f(x))…...
dify windos,linux下载安装部署,提供百度云盘地址
dify下载安装 dify1.0.1 windos安装包百度云盘地址 通过网盘分享的文件:dify-1.0.1.zip 链接: 百度网盘 请输入提取码 提取码: 1234 dify安装包 linux安装包百度云盘地址 通过网盘分享的文件:dify-1.0.1.tar.gz 链接: 百度网盘 请输入提取码 提取码…...
优化方法介绍(一)
优化方法介绍(一) 本博客是一个系列博客,主要是介绍各种优化方法,使用 matlab 实现,包括方法介绍,公式推导和优化过程可视化 1 失败案例介绍 本文在编写最速下降法的时候使用了经典的求解函数框架,并使用了自适应步长(alpha)机制,即加入参数flag,当出现梯度下降的情…...
Centos7.9 升级内核,安装RTX5880驱动
系统镜像下载 https://vault.centos.org/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso 系统安装步骤省略 开始安装显卡驱动 远程登录查看内核 [root192 ~]# uname -a Linux 192.168.119.166 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x8…...
计算轴承|滚动轴承故障频率
一、轴承故障频率概述 在旋转机械故障诊断中,轴承故障频率(BPFO、BPFI、BSF、FTF)是重要的分析依据。通过计算这些特征频率,可以帮助工程师: 识别轴承故障类型(内圈/外圈/滚动体故障)制定振动…...
Python 数据分析01 环境搭建教程
Python 数据分析01 环境搭建教程 一、安装 Python 环境 访问 Python 官方网站 Python 官网,选择适合你操作系统的 Python 版本进行下载。下载完成后,运行安装程序。在安装过程中,建议选择“Add Python to PATH”选项,这样可以在…...
程序化广告行业(80/89):近年发展动态与技术标准演进
程序化广告行业(80/89):近年发展动态与技术标准演进 大家好!在技术领域探索的过程中,我深刻认识到知识分享的力量,它能让我们在学习的道路上加速前行。写这篇博客,就是希望能和大家一起深入剖析…...
Node.js cluster模块详解
Node.js cluster 模块详解 cluster 模块允许你轻松创建共享同一服务器端口的子进程(worker),充分利用多核 CPU 的性能。它是 Node.js 实现高并发的重要工具。 核心概念 主进程(Master):负责管理工作进程…...
2025年认证杯数学建模C题完整分析论文(共39页)(含模型、可运行代码)
2025年认证杯数学建模竞赛C题完整分析论文 目录 摘要 一、问题重述 二、问题分析 三、模型假设 四、 模型建立与求解 4.1问题1 4.1.1问题1解析 4.1.2问题1模型建立 4.1.3问题1求解代码 4.1.4问题1求解结果 4.2问题2 4.2.1问题2解析 4.2.2问题2模型建…...
PostgreSQL 的 COPY 命令
PostgreSQL 的 COPY 命令 PostgreSQL 的 COPY 命令是高效数据导入导出的核心工具,性能远超常规 INSERT 语句。以下是 COPY 命令的深度解析: 一 COPY 命令基础 1.1 基本语法对比 命令类型语法示例执行位置文件访问权限服务器端COPYCOPY table FROM /p…...
MySQL进阶-存储引擎索引
目录 一:存储引擎 MySQL体系结构 存储引擎介绍 存储引擎特点 InnoDB MyISAM Memory 区别及特点 存储引擎选择 索引 索引概述 介绍 演示 特点 索引结构 概述 二叉树 B-Tree BTree Hash 索引分类 索引分类 聚集索引&二级索引 一࿱…...
为什么需要Refresh Token?
后端服务性能 一种方案是在服务器端保存 Token 状态,用户每次操作都会自动刷新(推迟) Token 的过期时间——Session 就是采用这种策略来保持用户登录状态的。然而仍然存在这样一个问题,在前后端分离、单页 App 这些情况下&#x…...
基于3A4000及CentOS的银河麒麟V10离线源码编译安装VLC
碰到过的一个具体问题: 源码安装vlc-3.0.x版本,需要注意的是,不要安装ffmpeg-5及以上的版本,即只支持ffmpeg-4的版本,因此,要安装vlc-3.0版本,一个重要的依赖时就会ffmpeg-4。报错没有revision…...
Windows for Redis 后台服务运行
下载 redis 安装包 地址:https://github.com/tporadowski/redis/releases 解压zip压缩包,执行 redis-server.exe 即可以窗口模式运行(窗口关闭则服务关闭) 运行窗口可以看到,端口是 6379 我这里使用 nvaicat 客服端测…...
前端工程化-包管理NPM-package.json 和 package-lock.json 详解
package.json 和 package-lock.json 详解 1.package.json 基本概念 package.json 是 Node.js 项目的核心配置文件,它定义了项目的基本信息、依赖项、脚本命令等。 主要字段 基本信息字段 name: 项目名称(必填) version: 项目版本…...
如何在 Linux 中彻底终止被 `Ctrl+Z` 挂起的进程?
问题场景 在 Linux 终端操作时,你是否曾遇到过这样的情况? 当运行一个命令(如 ping www.baidu.com)时,不小心按下了 CtrlZ,屏幕上显示类似以下内容: ^Z [2] 已停止 ping www.b…...
人工智能100问☞第3问:深度学习的核心原理是什么?
目录 一、通俗解释 二、专业解析 三、权威参考 深度学习的核心原理是通过构建多层神经网络结构,逐层自动提取并组合数据特征,利用反向传播算法优化参数,从而实现对复杂数据的高层次抽象和精准预测。 一、通俗解释 深度学习的核心原理,就像是教计算机像婴儿…...