- 2025-11-28:统计特殊三元组。用go语言,给定一个整数数组 nums。我们把满足 i<j<k(索引从 0 开始)且 nums[i] 和 nums[k] 都等于 nums[j] 的两倍的三个不同索引 (i, j, k) 称为“一组特殊三元组”。要求计算数组中所有这样的三元组数量,并将结果对 1000000007 取模后返回。3 <= n == nums.length <= 100000... 2025-11-28:统计特殊三元组。用go语言,给定一个整数数组 nums。我们把满足 i<j<k(索引从 0 开始)且 nums[i] 和 nums[k] 都等于 nums[j] 的两倍的三个不同索引 (i, j, k) 称为“一组特殊三元组”。要求计算数组中所有这样的三元组数量,并将结果对 1000000007 取模后返回。3 <= n == nums.length <= 100000...
- 1 简介本文实例展示真实存在于 Flask/Django 源码中的经典 duck-typing 实例(已节选并格式化)。这些代码能清晰展示两个框架如何通过鸭子类型实现“行为即接口”的设计。 2 Flaskmake_response() 通过接口类型识别多种返回值Flask 视图函数可以返回 字符串、dict、元组、Response 对象等,都是靠 duck typing 来判断并转换。F... 1 简介本文实例展示真实存在于 Flask/Django 源码中的经典 duck-typing 实例(已节选并格式化)。这些代码能清晰展示两个框架如何通过鸭子类型实现“行为即接口”的设计。 2 Flaskmake_response() 通过接口类型识别多种返回值Flask 视图函数可以返回 字符串、dict、元组、Response 对象等,都是靠 duck typing 来判断并转换。F...
- 哈希表、堆、栈、链表和队列是计算机科学中常用的数据结构,它们各自具有独特的特性和适用场景。以下是它们的主要应用场景及特点: 1. 哈希表(Hash Table)核心特性:通过哈希函数将键映射到数组索引,实现平均 O(1) 时间复杂度的插入、删除和查找。允许键值对存储,键唯一。适用场景:快速查找:如字典、缓存(如Redis)、数据库索引。去重:统计词频、检测重复元素。键值存储:配置文件、用户会... 哈希表、堆、栈、链表和队列是计算机科学中常用的数据结构,它们各自具有独特的特性和适用场景。以下是它们的主要应用场景及特点: 1. 哈希表(Hash Table)核心特性:通过哈希函数将键映射到数组索引,实现平均 O(1) 时间复杂度的插入、删除和查找。允许键值对存储,键唯一。适用场景:快速查找:如字典、缓存(如Redis)、数据库索引。去重:统计词频、检测重复元素。键值存储:配置文件、用户会...
- 树的定义、存储和基本运算 定义树是一种非线性数据结构,由 n(n ≥ 0)个节点 组成的有限集合。当 n = 0 时称为空树;非空树中有一个根节点,其余节点分为 m(m ≥ 0)个互不相交的有限集合,每个子集本身又是一棵树,称为子树。树的核心条件包括:唯一根节点:有且仅有一个根节点。互斥子树:除根节点外,其他节点形成互不相交的子树集合。 存储方式双亲表示法(顺序存储)结构:用数组存储节点,... 树的定义、存储和基本运算 定义树是一种非线性数据结构,由 n(n ≥ 0)个节点 组成的有限集合。当 n = 0 时称为空树;非空树中有一个根节点,其余节点分为 m(m ≥ 0)个互不相交的有限集合,每个子集本身又是一棵树,称为子树。树的核心条件包括:唯一根节点:有且仅有一个根节点。互斥子树:除根节点外,其他节点形成互不相交的子树集合。 存储方式双亲表示法(顺序存储)结构:用数组存储节点,...
- 以下是数组、链表、队列和栈的详细定义、存储方式及基本运算的总结,涵盖核心概念与操作: 一、数组(Array) 1. 定义连续内存存储的线性数据结构,通过**索引(下标)**直接访问元素。特点:固定大小(静态数组)或动态扩容(动态数组,如C++的vector、Python的list)。 2. 存储方式顺序存储:元素在内存中连续排列,地址计算公式:地址 = 基地址 + 索引 × 元素大小(例如:... 以下是数组、链表、队列和栈的详细定义、存储方式及基本运算的总结,涵盖核心概念与操作: 一、数组(Array) 1. 定义连续内存存储的线性数据结构,通过**索引(下标)**直接访问元素。特点:固定大小(静态数组)或动态扩容(动态数组,如C++的vector、Python的list)。 2. 存储方式顺序存储:元素在内存中连续排列,地址计算公式:地址 = 基地址 + 索引 × 元素大小(例如:...
- 在 Python 中,要对包含中文字符串的列表按照拼音顺序进行排序,可以使用 pypinyin 库将中文转换为拼音,然后基于拼音进行排序。以下是具体实现方法: 方法一:使用 pypinyin 库首先安装 pypinyin 库:pip install pypinyin代码示例:from pypinyin import pinyin, Styledef sort_chinese_list(lst... 在 Python 中,要对包含中文字符串的列表按照拼音顺序进行排序,可以使用 pypinyin 库将中文转换为拼音,然后基于拼音进行排序。以下是具体实现方法: 方法一:使用 pypinyin 库首先安装 pypinyin 库:pip install pypinyin代码示例:from pypinyin import pinyin, Styledef sort_chinese_list(lst...
- 1 简介本文简介duck typing类型, 一个简洁、可直接运行的 Python3 示例,展示“鸭子类型”(duck typing) 如何让代码灵活 + 简洁;最后说明 Flask 与 Django 中有哪些典型地方使用了这一思想。 2 Python 鸭子类型示例无需关心对象的真实类型,这就是鸭子类型核心思想: “If it walks like a duck and quacks ... 1 简介本文简介duck typing类型, 一个简洁、可直接运行的 Python3 示例,展示“鸭子类型”(duck typing) 如何让代码灵活 + 简洁;最后说明 Flask 与 Django 中有哪些典型地方使用了这一思想。 2 Python 鸭子类型示例无需关心对象的真实类型,这就是鸭子类型核心思想: “If it walks like a duck and quacks ...
- 在 Python 中,要从一个字符串数组(列表)中删除另一个字符串数组中存在的相同元素,可以使用列表推导式(List Comprehension)或集合(Set)操作。以下是几种实现方法: 方法 1:列表推导式(保留顺序)list1 = ["apple", "banana", "cherry", "date"]list2 = ["banana", "date", "fig"]# 删除 lis... 在 Python 中,要从一个字符串数组(列表)中删除另一个字符串数组中存在的相同元素,可以使用列表推导式(List Comprehension)或集合(Set)操作。以下是几种实现方法: 方法 1:列表推导式(保留顺序)list1 = ["apple", "banana", "cherry", "date"]list2 = ["banana", "date", "fig"]# 删除 lis...
- 1 简介不同语言都有类似于go的接口类型,Java, Python 3, 和 Rust 都有类似的接口类型设计, 它们的实现和设计理念有所不同。本文是对这些语言的接口设计的简单对比,以更全面了解该类型。 2 Java 中的接口设计Java 接口Java 中的接口是明确声明的,类型必须显式实现接口。接口定义了一组方法,但不包含任何实现。类通过 implements 关键字来声明自己实现某个接... 1 简介不同语言都有类似于go的接口类型,Java, Python 3, 和 Rust 都有类似的接口类型设计, 它们的实现和设计理念有所不同。本文是对这些语言的接口设计的简单对比,以更全面了解该类型。 2 Java 中的接口设计Java 接口Java 中的接口是明确声明的,类型必须显式实现接口。接口定义了一组方法,但不包含任何实现。类通过 implements 关键字来声明自己实现某个接...
- 2025-11-25:统计极差最大为 K 的分割方式数。用go语言,给定一个整数数组 nums 和一个整数 k。要求把 nums 划分成若干个相邻且非空的子数组(分段),使得每一段内元素的最大值与最小值之差不超过 k。求符合条件的所有划分方案的数量。结果可能很大,请对 1000000007 取模后输出。2 <= nums.length <= 50000。1 <= nums[i] <= 100... 2025-11-25:统计极差最大为 K 的分割方式数。用go语言,给定一个整数数组 nums 和一个整数 k。要求把 nums 划分成若干个相邻且非空的子数组(分段),使得每一段内元素的最大值与最小值之差不超过 k。求符合条件的所有划分方案的数量。结果可能很大,请对 1000000007 取模后输出。2 <= nums.length <= 50000。1 <= nums[i] <= 100...
- 1 简介Go 的接口(interface)是其语言的特性,涉及到了一些底层设计和意图,下面是详细的分析其底层设计原理和意图:Go 语言中的 interface 类型设计是为了强调灵活性和简洁性。隐式实现:Go 中的接口类型不需要显式声明“实现某个接口”,只要一个类型拥有接口所要求的所有方法,它就自动实现了该接口。这样可以更自由地组合代码,而不必担心每个类型都需要显式地声明“我实现了这个接口... 1 简介Go 的接口(interface)是其语言的特性,涉及到了一些底层设计和意图,下面是详细的分析其底层设计原理和意图:Go 语言中的 interface 类型设计是为了强调灵活性和简洁性。隐式实现:Go 中的接口类型不需要显式声明“实现某个接口”,只要一个类型拥有接口所要求的所有方法,它就自动实现了该接口。这样可以更自由地组合代码,而不必担心每个类型都需要显式地声明“我实现了这个接口...
- 2025-11-24:统计计算机解锁顺序排列数。用go语言,给定长度为 n 的数组 complexity,表示编号为 0 到 n-1 的 n 台计算机各自密码的复杂度(且复杂度两两不同)。编号为 0 的计算机一开始已处于解锁状态,作为起点。其余每台计算机 i 只能在此前已经解锁过某台编号为 j 的计算机的情况下被解开,且该 j 必须满足两点:j < i 且 complexity[j] < c... 2025-11-24:统计计算机解锁顺序排列数。用go语言,给定长度为 n 的数组 complexity,表示编号为 0 到 n-1 的 n 台计算机各自密码的复杂度(且复杂度两两不同)。编号为 0 的计算机一开始已处于解锁状态,作为起点。其余每台计算机 i 只能在此前已经解锁过某台编号为 j 的计算机的情况下被解开,且该 j 必须满足两点:j < i 且 complexity[j] < c...
- 2025-11-23:数组元素相等转换。用go语言,给出一个长度为 n 的数组 nums,元素仅为 1 或 -1,和一个非负整数 k。允许你执行不超过 k 次以下变换:选定一个索引 i(0 ≤ i < n−1),把位置 i 和 i+1 的两个数同时取相反数(即把它们的符号都反过来)。同一个索引可以在不同操作中重复选择。判断是否存在一种不超过 k 步的操作序列,使得操作结束后数组中的所有元素都... 2025-11-23:数组元素相等转换。用go语言,给出一个长度为 n 的数组 nums,元素仅为 1 或 -1,和一个非负整数 k。允许你执行不超过 k 次以下变换:选定一个索引 i(0 ≤ i < n−1),把位置 i 和 i+1 的两个数同时取相反数(即把它们的符号都反过来)。同一个索引可以在不同操作中重复选择。判断是否存在一种不超过 k 步的操作序列,使得操作结束后数组中的所有元素都...
- 1 简介为什么map数据结构在大多语言是无序?本文通过一些计算例子说明和帮助理解。通过一个具体的例子来说明 哈希值的计算是基于键的内容,而不是插入顺序。示例:假设我们有一个 map,它的键是字符串,值是整数。我们将通过计算每个键的哈希值来展示 map 中的元素是如何存储的。 2 计算原理和示例哈希表的基本原理哈希表通过一个 哈希函数 将键映射到哈希表的桶(bucket)中。哈希函数通常会根... 1 简介为什么map数据结构在大多语言是无序?本文通过一些计算例子说明和帮助理解。通过一个具体的例子来说明 哈希值的计算是基于键的内容,而不是插入顺序。示例:假设我们有一个 map,它的键是字符串,值是整数。我们将通过计算每个键的哈希值来展示 map 中的元素是如何存储的。 2 计算原理和示例哈希表的基本原理哈希表通过一个 哈希函数 将键映射到哈希表的桶(bucket)中。哈希函数通常会根...
- 1 简介在 Go 中,map 是 无序的,这是由其底层设计和性能优化决定的。本文试图解释和分析为什么 Go 的 map 不能保证元素的顺序,探讨其底层实现原理。 2. Go Map 的底层实现原理Go 的 map 是基于 哈希表(Hash Table)实现的。哈希表的基本思想是通过哈希函数(hash function)将键(key)映射到一个数组或桶(bucket)中。哈希表通常能够实现 ... 1 简介在 Go 中,map 是 无序的,这是由其底层设计和性能优化决定的。本文试图解释和分析为什么 Go 的 map 不能保证元素的顺序,探讨其底层实现原理。 2. Go Map 的底层实现原理Go 的 map 是基于 哈希表(Hash Table)实现的。哈希表的基本思想是通过哈希函数(hash function)将键(key)映射到一个数组或桶(bucket)中。哈希表通常能够实现 ...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签