前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >NumPy 差分、最小公倍数、最大公约数、三角函数详解

NumPy 差分、最小公倍数、最大公约数、三角函数详解

原创
作者头像
小万哥
发布于 2024-06-17 11:40:52
发布于 2024-06-17 11:40:52
16000
代码可运行
举报
文章被收录于专栏:程序人生丶程序人生丶
运行总次数:0
代码可运行

NumPy 差分

离散差分意味着相邻元素之间的减法。

例如,对于 [1, 2, 3, 4],离散差分将是 [2-1, 3-2, 4-3] = [1, 1, 1]

要找到离散差分,使用 diff() 函数。

示例:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.array([10, 15, 25, 5])

newarr = np.diff(arr)

print(newarr)

返回:[5 10 -20],因为 15-10=525-15=105-25=-20

我们可以通过给出参数 n 来重复执行此操作。

例如,对于 [1, 2, 3, 4]n = 2 时,离散差分将是 [2-1, 3-2, 4-3] = [1, 1, 1],然后,由于 n=2,我们将再次执行一次,得到新结果:[1-1, 1-1] = [0, 0]

示例

对以下数组进行两次离散差分:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.array([10, 15, 25, 5])

newarr = np.diff(arr, n=2)

print(newarr)

返回:[5 -30],因为:15-10=525-15=105-25=-20,而 10-5=5-20-10=-30

NumPy 最小公倍数(LCM)

最小公倍数是两个数的最小公倍数。

示例:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

num1 = 4
num2 = 6

x = np.lcm(num1, num2)

print(x)

返回:12,因为这是这两个数的最小公倍数(4*3=126*2=12)。

在数组中找到最小公倍数

要找到数组中所有值的最小公倍数,可以使用 reduce() 方法。

reduce() 方法将对每个元素使用 ufunc,在本例中是 lcm() 函数,并将数组减少一个维度。

示例

找到以下数组值的最小公倍数:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.array([3, 6, 9])

x = np.lcm.reduce(arr)

print(x)

返回:18,因为这是所有三个数的最小公倍数(3*6=186*3=189*2=18)。

示例

找到包含从 110 的所有整数的数组中所有值的最小公倍数:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.arange(1, 11)

x = np.lcm.reduce(arr)

print(x)

NumPy 最大公约数(GCD)

最大公约数(GCD,也称为 HCF,即最高公因数)是两个数的最大公共因数。

示例:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

num1 = 6
num2 = 9

x = np.gcd(num1, num2)

print(x)

返回:3,因为这是两个数都可以被整除的最大数(6/3=29/3=3)。

在数组中找到最大公约数

要找到数组中所有值的最大公约数,可以使用 reduce() 方法。

reduce() 方法将对每个元素使用 ufunc,在本例中是 gcd() 函数,并将数组减少一个维度。

示例

找到以下数组中所有数字的最大公约数:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.array([20, 8, 32, 36, 16])

x = np.gcd.reduce(arr)

print(x)

返回:4,因为这是所有值都可以被整除的最大数。

NumPy 三角函数

NumPy 提供了 sin()cos()tan() 等 ufunc,它们接受弧度值并生成相应的正弦、余弦和正切值。

示例:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

x = np.sin(np.pi/2)

print(x)

示例

找到数组 arr 中所有值的正弦值:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.array([np.pi/2, np.pi/3, np.pi/4, np.pi/5])

x = np.sin(arr)

print(x)

将角度转换为弧度

默认情况下,所有的三角函数都接受弧度作为参数,但是在 NumPy 中我们也可以将弧度和角度相互转换。

注意:弧度值是 pi/180 乘以角度值。

示例

将以下数组 arr 中的所有值转换为弧度:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.array([90, 180, 270, 360])

x = np.deg2rad(arr)

print(x)

将弧度转换为角度

示例

将以下数组 arr 中的所有值转换为角度:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.array([np.pi/2, np.pi, 1.5*np.pi, 2*np.pi])

x = np.rad2deg(arr)

print(x)

查找角度

从正弦、余弦、正切值查找角度。例如,sin、cos 和 tan 的反函数(arcsin、arccos、arctan)。

NumPy 提供了 arcsin()arccos()arctan() 等 ufunc,它们给出相应 sin、cos 和 tan 值的弧度值。

示例

找到 1.0 的角度:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

x = np.arcsin(1.0)

print(x)

数组中每个值的角度

示例

找到数组中所有正弦值的角度:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

arr = np.array([1, -1, 0.1])

x = np.arcsin(arr)

print(x)

斜边

在 NumPy 中使用勾股定理找到斜边。

NumPy 提供了 hypot() 函数,它接受底边和垂直边的值,并根据勾股定理生成斜边。

示例

找到底边为 4,垂直边为 3 的斜边:

代码语言:python
代码运行次数:0
运行
AI代码解释
复制
import numpy as np

base = 3
perp = 4

x = np.hypot(base, perp)

print(x)

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
Java - 数据结构之树
树(Tree)不是线性表,而是一种描述非线性层次关系的数据结构,描述的是一对多的数据结构。
雨临Lewis
2022/01/12
3950
【Python数据结构系列】☀️《树与二叉树-基础知识》——知识点讲解+代码实现☀️
树(Tree)是n(n≥0)个结点的有限集,它或为空树(n=0);或为非空树,对于非空树T:
天道Vax的时间宝藏
2021/08/24
1.1K0
数据结构-5.二叉树
本篇博客给大家带来的是二叉树的知识点, 其中包括面试经常会提问的真题 ArrayList 和 LinkedList 的区别 .
用户11369350
2024/11/19
1040
数据结构-5.二叉树
种树:二叉树、二叉搜索树、AVL树、红黑树、哈夫曼树、B树、树与森林
树是我们计算机中非常重要的一种数据结构,同时使用树这种数据结构,可以描述现实生活中的很多事物,例如家 谱、单位的组织架构、等等。 树是由n(n>=1)个有限结点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就 是说它是根朝上,而叶朝下的。
看、未来
2020/08/25
1.2K0
种树:二叉树、二叉搜索树、AVL树、红黑树、哈夫曼树、B树、树与森林
【数据结构】优秀树结构之一 平衡二叉树(AVL树)
给你一个数列{1,2,3,4,5,6},要求创建一颗二叉排序树(BST), 并分析问题所在. :
冷环渊
2022/03/30
1980
【数据结构】优秀树结构之一 平衡二叉树(AVL树)
数据结构和算法(五)
散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
shaoshaossm
2022/12/26
7000
数据结构和算法(五)
【数据结构】树与二叉树(十四):二叉树的基础操作:查找给定结点的父亲(算法Father )
  二叉树是一种常见的树状数据结构,它由结点的有限集合组成。一个二叉树要么是空集,被称为空二叉树,要么由一个根结点和两棵不相交的子树组成,分别称为左子树和右子树。每个结点最多有两个子结点,分别称为左子结点和右子结点。
Qomolangma
2024/07/30
990
【数据结构】树与二叉树(十四):二叉树的基础操作:查找给定结点的父亲(算法Father )
数据结构——二叉树
树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。
Eternity._
2024/06/14
1080
数据结构——二叉树
二叉树入门就是这么简单!
自知技术有限,不过凭借着对编程的喜爱与兴趣,坚持发表一些文章,或在大神眼中,确实微不足道,也或许能给一些朋友一些启发,由于个人技术的不足,或许文章中会出现一些不足或错误之处,非常感谢大家能不吝指出,坚持写作大半年了,虽说没有什么显著的成就,但是一篇篇文章也给了我满满的记忆,作为一名普通本科的在校学生,每天坚持写一些东西,去做图,去写代码,去看一些书籍,找一些资料,帮助自己理解,再想想如何用自己的语言总结,归纳一下。技术的局限,有时候总会遇到一些盲区,写出来的文章,总是过于叙事化,理论化,缺乏实际经验,本地所模拟的一些例子,可能并不是很合理,也没有那么使用,但我也在尽量的弥补与实际开发应用的距离,总而言之,感谢各位支持,也感谢帮助过我的一个人。
BWH_Steven
2019/11/12
8270
二叉树入门就是这么简单!
我的思念像满二叉树般疯长,每个空指针都指向你的方向——全程动画可视化数据结构算法之二叉树
盛透侧视攻城狮
2025/03/02
1100
我的思念像满二叉树般疯长,每个空指针都指向你的方向——全程动画可视化数据结构算法之二叉树
二叉树的应用详解 - 数据结构
1、排序树——特点:所有结点“左小右大 2、平衡树——特点:所有结点左右子树深度差≤1 3、红黑树——特点:除了具备二叉查找树的特性外还有5个特性以致保持自平衡。 4、字典树——由字符串构成的二叉排序树 5、判定树——特点:分支查找树(例如12个球如何只称3次便分出轻重) 6、带权树——特点:路径带权值(例如长度) 7、最优树——是带权路径长度最短的树,又称 Huffman树,用途之一是通信中的压缩编码。
黄规速
2022/04/14
1.4K0
二叉树的应用详解 - 数据结构
[数据结构与算法] 树结构之二叉排序树、平衡二叉树、多路查找树
二叉排序树:BST: (Binary Sort(Search) Tree), 对于二叉排序树的任何一个非叶子节点,要求左子节点的值比当前节点的值小,右子节点的值比当前节点的值大。
时间静止不是简史
2020/07/27
7670
[数据结构与算法] 树结构之二叉排序树、平衡二叉树、多路查找树
【初阶数据结构】二叉树(附题)
树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。
ZLRRLZ
2024/12/13
3890
【初阶数据结构】二叉树(附题)
7-1 树结构 和 二叉树
前面讲的都是 线性存储结构,而树是一种典型的非线性存储结构,一个元素可以有多个直接后继元素。
TeeyoHuang
2019/07/02
6270
7-1 树结构 和 二叉树
【数据结构】建立二叉树以及哈夫曼树及哈夫曼编码
文章目录 5.4.1 方式 5.4.2 由先根和中根遍历序列建二叉树 5.4.3 由后根和中根遍历序列建二叉树 5.4.4 由标明空子树的先根遍历建立二叉树 5.4.5 由完全二叉树的顺序存储结构建立二叉链式存储结构 5.5 哈夫曼树及哈夫曼编码 5.5.1 基本概念 5.5.2 最优二叉树 5.5.3 构建哈夫曼树 5.5.4 哈夫曼编码 5.5.5 哈夫曼编码类 5.4.1 方式 四种方式可以建立二叉树 由先根和中根遍历序列建二叉树 由后根和中根遍历序列建二叉树 由标明空子树的先根遍
陶然同学
2023/02/26
1.1K0
【数据结构】建立二叉树以及哈夫曼树及哈夫曼编码
【数据结构】什么是二叉树?
所有的结点都只有左子树的二叉树叫左斜树.所有结点都是只有右子树的二叉树叫右斜树.这两者统称为斜树.上图中的树2就是左斜树,树3就是右斜树. 斜树每一层只有一个结点,结点的个数与二叉树的深度相同.
修修修也
2024/04/01
1050
【数据结构】什么是二叉树?
为实习准备的数据结构(7)--线索二叉树
在二叉树的结点上加上线索的二叉树称为线索二叉树,对二叉树以某种遍历方式(如先序、中序、后序或层次等)进行遍历,使其变为线索二叉树的过程称为对二叉树进行线索化。
看、未来
2021/09/18
3870
7-2 其余的一些树-排序二叉树-霍夫曼树
二叉排序树可以通过递归的方法来定义,它或者是空二叉树,或者是具有如下定义的二叉树:
TeeyoHuang
2019/07/02
7070
7-2 其余的一些树-排序二叉树-霍夫曼树
为实习准备的数据结构(4)-- 二叉树
==特别标注:如果二叉树中有相同值元素的存在,那么有极大概率还原失败,下面中、后序遍历也是==
看、未来
2021/03/17
3970
【数据结构】二叉树
树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:
xxxflower
2023/04/16
2730
【数据结构】二叉树
推荐阅读
相关推荐
Java - 数据结构之树
更多 >
LV.1
这个人很懒,什么都没有留下~
目录
  • NumPy 差分
    • 示例:
    • 示例
  • NumPy 最小公倍数(LCM)
    • 示例:
    • 在数组中找到最小公倍数
    • 示例
    • 示例
  • NumPy 最大公约数(GCD)
    • 示例:
    • 在数组中找到最大公约数
    • 示例
  • NumPy 三角函数
    • 示例:
    • 示例
    • 将角度转换为弧度
    • 示例
    • 将弧度转换为角度
    • 示例
    • 查找角度
    • 示例
    • 数组中每个值的角度
    • 示例
    • 斜边
    • 示例
  • 最后
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档