技术文章库 - 编程教程与技术分享平台


Python Pandas - 从具有特定时间序列频率的 DateTimeIndex 中提取微秒

要从具有特定时间序列频率的DateTimeIndex中提取微秒,请使用DateTimeIndex.microsecond属性。首先,导入所需的库−importpandasaspd创建一个周期为6、频率为us(即微秒)的DatetimeIndex。时区为澳大利亚/悉尼−datetimeindex=pd.date_range('2021-10

Python Pandas - 从具有特定时间序列频率的 DateTimeIndex 中提取秒数

要从具有特定时间序列频率的DateTimeIndex中提取秒数,请使用DateTimeIndex.second属性。首先,导入所需的库−importpandasaspd创建一个周期为6、频率为S(即秒)的DatetimeIndex。时区为澳大利亚/悉尼−datetimeindex=pd.date_range('2021-10-2002:

Python Pandas - 从具有特定时间序列频率的 DateTimeIndex 中提取分钟

要从具有特定时间序列频率的DateTimeIndex中提取分钟,请使用DateTimeIndex.minute属性。首先,导入所需的库−importpandasaspd创建一个DatetimeIndex,周期为6,频率为T,即分钟。时区为澳大利亚/悉尼−datetimeindex=pd.date_range('2021-10-2002:

用 Python 编写程序来计算 s 中不同子字符串的数量

假设我们有一个字符串s,我们必须找出s中不同非空子字符串的数量。因此,如果输入为s="abaa",则输出将为8,因为子字符串为["a","b","ab","ba","aa","aba","baa","

用 Python 编写程序,查找可以删除的最小子列表的长度,使总和可以被 k 整除

假设我们有一个包含正值的列表,称为nums,还有一个正数k。我们必须找到可以从nums中删除的最短子列表(可能为空)的长度,使得剩余元素的总和可以被k整除。但我们不能删除整个列表。如果没有要删除的子列表,则返回-1。因此,如果输入为nums=[5,8,6,3]k=8,则输出将为1,因为[5,8,6,3]元素的当前总和为22。如果我们删除长度为1的子列表[6]

用 Python 编写程序,查找最少删除操作以使字符串成为字符串

假设我们有两个小写字符串s和t,现在考虑一个操作,我们可以删除这两个字符串中的任何一个字符。我们必须找到使s和t相等所需的最少操作数。因此,如果输入为s="pipe"t="ripe",则输出将为2,因为我们可以从s中删除"p",从t中删除"r",以使这些字符串相同"i

用 Python 编写程序,在切割杆并出售相同长度的杆后找到最大利润

假设我们有一个名为rodLen的杆长度列表。我们还有另外两个整数,分别称为利润和成本,分别表示每单位长度的利润和每次切割的成本。我们可以从每单位长度的杆中获得利润,但我们只能出售长度相同的杆。我们也可以将杆切成两段,使它们的长度为整数,但每次切割我们都必须支付成本金额。我们可以根据需要多次切割杆。我们必须找到可以赚取的最大利润。因此,如果输入为rodLen=[7,10]利润=6

用 Python 编写程序,找出 k 条长度相同的丝带的最大长度

假设我们有一个正数列表,表示丝带长度,还有一个值k。我们可以随意剪丝带,但必须找到最大长度r,这样才能得到k条长度为r的丝带。如果找不到这样的解决方案,则返回-1。因此,如果输入为Ribbons=[1,2,5,7,15]k=5,则输出将为5,因为我们可以将尺寸为15的丝带剪成3段,每段长度为5。然后将尺寸7的丝带剪成尺寸2和5。还有另一条尺寸

用 Python 编写一个程序,通过给定操作减少列表并找到最小的剩余数字

假设我们有一个正数列表,称为nums。现在考虑一个操作,我们删除任意两个值a和b,其中a≤b,如果a<b有效,则将b-a插入回列表nums。如果我们可以执行任意数量的操作,我们必须找到可以得到的最小剩余数字。如果列表为空,则只需返回0。因此,如果输入为nums=[2,4,5],则输出将为1,因为我们可以选择4和5,然后插入1以获得[

用 Python 编写程序来计算二进制字符串中全为 1 的子字符串数量

假设我们有一个二进制字符串s。我们必须找出只包含"1"的子字符串的数量。如果答案太大,则将结果取10^9+7的余数。因此,如果输入为s="100111",则输出将为7,因为只包含"1"的子字符串为["1"、"1"、"1"、"1"、"1"、"11"、"11"和"111"]为了解决这个问题,我们将遵循以下步骤−a:=0count:=0对于i在0到s-

用 Python 编写程序来计算给定二进制矩阵中方阵子矩阵的数量

假设我们有一个2D二进制矩阵。我们必须找到矩阵中所有元素均为1的方格子矩阵的总数。因此,如果输入如下011011则输出将为5,因为有一个(2×2)方格和四个(1×1)方格要解决这个问题,我们将遵循以下步骤−如果mat为空,则返回0c:=0foriinrange0到mat的行数,执行对于j,范围为0到mat的列数

用 Python 编写程序来计算完全包含在其他间隔内的间隔数

假设我们有一个间隔列表。在此列表中,interval[i]具有[start,end]值。我们必须找出另一个间隔包含的间隔数。如果有一个间隔包含多个其他间隔,则应仅计算一次。当s0≤s1且e0≥时,间隔[s0,e0]位于另一个间隔[s1,e1]内e1。因此,如果输入类似于intervals=[[2,6],[3,4],[4,7],[5,5]]

用 Python 编写程序检查是否可以填充正方形,其中每行和每列将容纳不同的元素

假设我们有一个n×n矩阵,其中包含从0到n的值。这里0表示未填充的正方形,我们必须检查是否可以填充空正方形,使得每行和每列中的每个数字从1到n都恰好出现一次。因此,如果输入如下002201123那么输出将为True,因为我们可以将矩阵设置为312231123为了解决这个问题,我们将遵循以下步骤−定义一个函数find_empty_cell()

用 Python 编写程序,查找二叉树中两个节点之间路径的最大和

假设我们有一棵二叉树;我们必须找到任意两个节点之间任何路径的最大和。因此,如果输入如下那么输出将为62,因为节点为[12,13,14,16,7]。为了解决这个问题,我们将遵循以下步骤−定义一个函数utils()。这将根取根如果根为空,则返回0l:=utils(根的左侧)r:=utils(根的右侧)max_single:=(l和r的最大值)+根的值)和

用 Python 编写程序,查找列表中不相邻元素的最大和

假设我们有一个名为nums的数字列表,我们将定义一个函数,返回不相邻数字的最大和。这里的数字可以是0或负数。因此,如果输入为[3,5,7,3,6],则输出将为16,因为我们可以取3、7和6来得到16。为了解决这个问题,我们将遵循以下步骤−如果nums的大小<=2,则返回nums的最大值noTake:=0take:=nums[0]对

用 Python 编写程序,查找具有最大和的连续子列表的总和

假设我们有一个数组A。我们必须找到具有最大和的连续子列表,并返回其和。因此,如果数组A类似于A=[-2,1,-3,4,-1,2,1,-5,4],则和将为6。子数组将为[4,-1,2,1]。为了解决这个问题,我们将尝试使用动态规划方法。定义一个与A大小相同的数组dp,并用0填充它dp[0]:=A[0]fori:=1tosizeofA–

用 Python 编写程序来查找循环子列表的最大和

假设我们有一个数字列表nums,现在考虑一个循环数字列表,其中nums的开头和结尾是相邻的。我们必须找到循环列表中非空子列表的最大和。因此,如果输入为nums=[2,3,-7,4,5],则输出将为14,因为我们可以取子列表[4,5,2,3],其和为14。为了解决这个问题,我们将遵循以下步骤−max_sum:=负无穷大,cur_max:=0min

用 Python 编写程序,查找 k 大小的列表,其中最大和最小项之间的差异最小

假设我们有一个名为nums的数字列表和一个整数k,我们必须从nums中选择元素来创建一个大小为k的列表,使得列表中最大整数和最小整数之间的差异尽可能小。我们将返回这个差值。因此,如果输入为nums=[3,11,6,2,9],k=3,则输出将为4,因为我们可以制作的最佳列表是[2,3,6]。为了解决这个问题,我们将遵循以下步骤−对列表nums

用 Python 编写的程序,从单词列表中找出最大的字谜分组

假设我们有一个字符串单词列表,我们必须将所有字谜分组在一起并返回最大分组的大小。因此,如果输入为words=["xy","yx","xyz","zyx","yzx","wwwww"],则输出将为3,因为["xyz","zyx&q

用 Python 编写程序,找出组成一个由 K 个不同字符组成的字符串的最小概率

假设我们有一个由小写字母组成的字符串s,以及另一个数字k,我们必须找出字符串中所需的最小更改次数,以使生成的字符串最多有k个不同的字符。在这种情况下,更改实际上是将单个字符更改为任何其他字符。因此,如果输入为s="wxxyyzzxx",k=3,则输出将为1,因为我们可以删除字母"w"得到3个不同的字符(x、y和z)。为了解决