经验笔记

C ++中的独特路径II

假设有一个机器人位于anxm网格的左上角(n行m列)。机器人在任何时间点只能向下或向右移动。机器人希望到达网格的右下角(在下图中标记为“ END”)。网格中的某些单元被标记,这将被视为障碍。因此,我们必须找到多少个可能的唯一路径?例如,如果… 更多>

Python中的唯一路径

假设有一个机器人位于anxm网格的左上角(n行m列)。机器人在任何时间点只能向下或向右移动。机器人希望到达网格的右下角(在下图中标记为“ END”)。因此,我们必须找到多少个唯一的路径?例如,如果m = 3且n = 2,则网格将如下所示-机… 更多>

用C ++旋转列表

假设我们有一个链表。我们必须将列表旋转到正确的k个位置。k的值不为负。因此,如果列表类似于[1,23,4,5,NULL],并且k = 2,则输出将为[4,5,1,2,3,NULL]让我们看看步骤-如果列表为空,则返回nulllen:= 1创… 更多>

C ++中的置换序列

假设集合像[1,2,3,...,n],总共包含n个!独特的排列。通过按顺序列出并标记所有排列,我们得到n = 3的这些序列:[“ 123”,“ 132”,“ 213”,“ 231”,“ 312”,“ 321”]因此,如果n和k给出,然后返回… 更多>

Python中的Spiral Matrix II

假设我们有一个正整数n,我们必须生成一个具有n2个元素的螺旋矩阵的方阵。因此,如果n = 5,则矩阵将为-12341213145111615610987让我们看看步骤-设置(row1,col1):=(0,0)和(row2,col2):=(n… 更多>

在Python中合并间隔

假设我们有一个间隔集合,我们必须合并所有重叠的间隔。因此,如果间隔类似于[[1,3],[2,6],[8,10],[15,18]],则合并后的间隔将为[[1,6],[8,10] ],[15,18]]。这是因为有两个重叠的区间,区间为[1,3]… 更多>

用Python跳游戏

假设我们有一个非负整数数组;我们最初位于数组的第一个索引处。给定数组中的每个元素代表该位置的最大跳转长度。我们必须确定我们是否能够达到最后一个索引。因此,如果数组类似于[2,3,1,1,4],则输出为true。这就像从位置0跳1步,然后从位… 更多>

C ++中的组合和II

假设我们有一组候选编号(所有元素都是唯一的)和一个目标编号。我们必须在候选者中找到所有唯一组合,其中候选者数字之和等于给定目标。将从候选人中多次选择相同的号码。因此,如果元素为[2,3,6,7,8]并且目标值为8,则可能的输出将为[[2,6… 更多>

Python中的组合和

假设我们有一组候选编号(所有元素都是唯一的)和一个目标编号。我们必须在候选者中找到所有唯一组合,其中候选者数字之和等于给定目标。可以从候选人无限制的次数中选择相同的重复数。因此,如果元素为[2,3,6,7]并且目标值为7,则可能的输出将为[… 更多>

Python中的下一个排列

假设我们要实现下一个置换方法,该方法将数字重新排列到字典上数字的下一个更大置换中。如果无法进行这种排列,则此方法会将其重新排列为最低可能的顺序(实际上是按升序排序)。替换必须就位,并且不要使用任何额外的内存。例如,如果“输入”在左栏中,而其… 更多>

使用Python中的DOM API解析XML

文档对象模型(“ DOM”)是来自万维网联合会(W3C)的一种跨语言API,用于访问和修改XML文档。DOM对于随机访问应用程序非常有用。SAX一次只允许您查看一份文档。如果您正在查看一个SAX元素,则无权访问另一个元素。这是使用xml.d… 更多>

使用Python中的SAX API解析XML

SAX是用于事件驱动的XML解析的标准接口。使用SAX解析XML通常需要您通过子类化xml.sax.ContentHandler来创建自己的ContentHandler。您的ContentHandler处理XML风格的特定标记和属性。Con… 更多>

Python中的多线程优先级队列

队列模块允许您创建一个可以容纳特定数量项目的新队列对象。有以下方法来控制队列-get() -get()从队列中删除并返回一个项目。put() -put将项目添加到队列。qsize() -qsize()返回队列中当前项目的数量。empty()… 更多>

在Python中同步线程

Python随附的线程模块包括一个易于实现的锁定机制,可让您同步线程。通过调用Lock()方法创建一个新锁,该方法返回新锁。新锁对象的acquire(blocking)方法用于强制线程同步运行。可选的阻塞参数使您可以控制线程是否等待获取锁。… 更多>

Python中的线程模块

与上一节中讨论的线程模块相比,Python 2.4中包含的更新的线程模块为线程提供了更强大的高级支持。线程模块公开了线程模块的所有方法,并提供了一些其他方法-threading.activeCount() -返回活动的线程对象数。threa… 更多>

在Python中启动新线程

要生成另一个线程,您需要调用线程模块中可用的以下方法-thread.start_new_thread ( function, args[, kwargs] )通过此方法调用,可以快速有效地在Linux和Windows中创建新线程。方法调用立… 更多>

使用Python将附件作为电子邮件发送

要发送包含混合内容的电子邮件,需要将Content-type标头设置为multipart / mixed。然后,可以在border中指定文本和附件部分。边界以两个连字符开头,后跟一个唯一编号,该编号不能出现在电子邮件的邮件部分中。表示电子邮… 更多>

使用Python发送HTML电子邮件

使用Python发送文本消息时,所有内容均被视为简单文本。即使您在文本消息中包含HTML标签,它也将显示为简单文本,并且HTML标签不会根据HTML语法进行格式化。但是Python提供了将HTML消息作为实际HTML消息发送的选项。在发送电… 更多>

Python中的数据库处理错误

错误的来源很多。一些示例是已执行的SQL语句中的语法错误,连接失败或为已取消或完成的语句句柄调用fetch方法。DB API定义了每个数据库模块中必须存在的许多错误。下表列出了这些例外。序号例外与说明1警告用于非严重问题。必须将Standa… 更多>

用Python断开数据库

若要断开数据库连接,请使用close()方法。db.close()如果用户使用close()方法关闭了与数据库的连接,则所有未完成的事务都会由数据库回滚。但是,最好不要显式地调用commit或rollback,而不是依赖于任何数据库较低级别… 更多>

Python中的提交和回滚操作

承诺提交是操作,它向数据库发出绿色信号以完成更改,并且此操作之后,任何更改都无法还原。这是一个调用commit方法的简单示例。db.commit()回滚如果您对一项或多项更改不满意,并且想要完全还原这些更改,请使用rollback()方法。… 更多>

使用Python执行数据库事务

事务是一种确保数据一致性的机制。事务具有以下四个属性-原子性-要么事务完成,要么什么都没有发生。一致性-事务必须以一致状态开始,并使系统保持一致状态。隔离-事务的中间结果在当前事务之外不可见。持久性-提交事务后,即使在系统故障后,效果也将持… 更多>

Python中的数据库删除操作

要从数据库中删除某些记录时,需要执行DELETE操作。以下是从AGE大于20的EMPLOYEE删除所有记录的过程-示例#!/usr/bin/python import MySQLdb # Open database connection d… 更多>

Python中的数据库更新操作

UPDATE对任何数据库的操作意味着更新一个或多个记录,这些记录已在数据库中可用。以下过程更新所有SEX为'M'的记录。在这里,我们将所有男性的年龄提高了一年。示例#!/usr/bin/python import MySQLdb # Ope… 更多>

Python中的数据库读取操作

任何数据库上的READ操作意味着要从数据库中获取一些有用的信息。建立我们的数据库连接后,即可准备对该数据库进行查询。您可以使用fetchone()方法来获取单个记录或使用fetchall()从数据库表的方法来fetech多个值。fetcho… 更多>

Python中的数据库INSERT操作

要在数据库表中创建记录时需要它。示例以下示例执行SQL INSERT语句以将记录创建到EMPLOYEE表中-#!/usr/bin/python import MySQLdb # Open database connection db = M… 更多>

用Python创建数据库表

建立数据库连接后,我们准备使用创建的游标的execute方法在数据库表中创建表或记录。示例让我们创建数据库表EMPLOYEE-#!/usr/bin/python import MySQLdb # Open database connecti… 更多>

如何在Python中安装MySQLdb?

在继续之前,请确保已在计算机上安装了MySQLdb。只需在Python脚本中键入以下内容并执行-#!/usr/bin/python import MySQLdb如果产生以下结果,则表示未安装MySQLdb模块-Traceback (most… 更多>

在Python中检索Cookies

检索所有设置的cookie非常容易。Cookies存储在CGI环境变量HTTP_COOKIE中,它们具有以下形式-key1 = value1;key2 = value2;key3 = value3....示例这是有关如何获取Cookie的示… 更多>

在Python中设置Cookie

将cookie发送到浏览器非常容易。这些cookie与HTTP标头一起发送到Content-type字段。假设您要将UserID和Password设置为cookie。设置cookie的步骤如下-示例#!/usr/bin/python pri… 更多>

在Python中的CGI中使用Cookies

HTTP协议是无状态协议。对于商业网站,需要在不同页面之间维护会话信息。例如,一个用户注册在完成许多页面后结束。如何在所有网页上维护用户的会话信息?在许多情况下,使用Cookie是记住和跟踪偏好,购买,佣金和其他信息(以获得更好的访问者体验… 更多>

Python中的CGI环境变量

所有CGI程序都可以访问以下环境变量。这些变量在编写任何CGI程序时都起着重要作用。序号变量名称和描述1CONTENT_TYPE内容的数据类型。客户端将附件内容发送到服务器时使用。例如,文件上传。2CONTENT_LENGTH查询信息的长度… 更多>

Python中的第一个CGI程序

这是一个简单的链接,链接到一个名为hello.py的CGI脚本。该文件保存在/ var / www / cgi-bin目录中,并且具有以下内容。在运行CGI程序之前,请确保使用chmod 755 hello.py UNIX命令更改文件的模式… 更多>

Python中带括号的特殊语法

序号范例与说明1R(?#comment)匹配“ R”。所有其余的都是评论2R(?i)uby匹配“ uby”时不区分大小写3R(?i:uby)与上述相同4rub(?:y | le))仅在不创建\ 1反向引用的情况下进行分组 更多>

Python中的正则表达式示例

文字字符序号范例与说明1python匹配行首。Character 类序号范例与说明1[pp] ython匹配“ Python”或“ python”2rub [ye]匹配“ ruby”或“ rube”3[aeiou]匹配任何一个小写的元音4[… 更多>

C ++中的有效括号字符串

假设我们有一个表达式。该表达式带有一些括号;我们必须检查括号是否平衡。括号的顺序是(),{}和[]。假设有两个字符串。“()[(){()}]”有效,但“ {[}]”无效。为了解决这个问题,我们将遵循以下步骤-遍历表达式,直到用尽为止如果当前… 更多>

用Python计算位数

假设我们有一个非负整数num。对于0≤i≤num范围内的每个数字i,我们必须计算二进制对应的1的数目并将其作为列表返回。因此,如果数字为5,则数字为[0、1、2、3、4、5],并且这些数字中的1的数字为[0、1、1、2、1、2]为了解决这个… 更多>

Python中最大的数字

假设有一个非负整数列表,我们必须对它们进行排列,使它们形成最大数。因此,如果数组为[10,2],则最大数量为210。为了解决这个问题,我们将遵循以下步骤-排列数字时,最重要的数字要比第一个数字大得多,就像这样排列数字。之后,只需加入数组中的… 更多>

在C ++程序中评估波兰语反向符号

假设我们有反向抛光符号,并且我们必须评估该值。反向波兰语符号也称为后缀表达式。在这里,我们必须使用堆栈数据结构来解决后缀表达式。从后缀表达式中,找到一些操作数后,将它们压入堆栈。找到某个运算符后,将从堆栈中弹出两个项目,然后按正确的顺序执行… 更多>

Python中的断字

假设我们有一个非空字符串s和一个字典wordDict。那包含一个非空单词的列表,确定何时可以将s分割成一个或多个字典单词的以空格分隔的序列。我们必须遵循一些规则-字典中的同一单词可以在分割中多次重复使用。我们可以假设字典中不包含重复的单词。… 更多>

C ++中的加油站

假设有一个圆圈,并且该圆圈上有n个加油站。我们有两组数据,例如-每个加油站拥有的汽油量一个加油站到另一个加油站的距离。计算第一个点,汽车将从该点完成圆。假设1单位汽油,汽车可以行驶1单位距离。假设有四个加油站,且加气量和到下一个加油站的距离… 更多>

C ++中的回文分割

假设我们有一个输入字符串,那么当该分区的每个子字符串都是回文时,该字符串的分区就是回文分区。在本节中,我们必须找到回文分割给定字符串所需的最小切割数。因此,如果字符串像“ ababbbabbababa”,则最小分割为回文。这里需要3个切口。… 更多>

用C ++评估波兰语反向符号

假设我们有一个三角形。我们必须找到从上到下的最小路径总和。在每一步中,我们都可以移至下一行的相邻数字。例如,如果下面的三角形像[ [2], [3,4], [6,5,7], [4,1,8,3] ]从上到下的最小路径总和为11(2 + 3 + … 更多>

Python中的解码方式

假设我们有一条消息,使用以下映射将包含从A到Z的字母编码为数字-'A'→1,'B'→2 ...'Z'→26。因此,如果我们有一个非空字符串,仅包含数字,那么我们必须找到可以解码的方式。因此,如果字符串类似于“ 12”,则可以由“ AB”或“… 更多>

C ++中的格雷码

众所周知,格雷码是一个二进制数字系统,其中两个连续的值只有一位不同。假设我们有一个非负整数n,代表代码中的总位数。我们必须打印格雷码序列。格雷码序列必须以0开头。因此,如果输入为2,则结果将为[0,1,3,2],这是因为0的格雷为00,1的… 更多>

C ++中的分区列表

假设我们有一个链表和一个值x。我们必须进行分区。对其进行分区,以使所有小于x的节点位于大于或等于x的节点之前。我们应该保留这两个分区中每个节点的原始相对顺序。因此,如果列表类似于[1,4,3,2,5,2]且x = 3,则输出将为[1,2,2… 更多>

C ++中的组合

假设我们有两个整数n和k。我们必须找到1 ... n中k个数字的所有可能组合。因此,如果n = 4且k = 2,则组合将为[[1,2],[1,3],[1,4],[2,3],[2,4],[3,4 ]]为了解决这个问题,我们将遵循以下步骤-我们… 更多>

用Python对颜色排序

假设我们有一个包含n个对象的数组。这些颜色是红色,白色或蓝色,将它们分类就位,以使相同颜色的对象相邻。因此,颜色按红色,白色和蓝色的顺序排列。在这里,我们将使用数字0、1和2分别代表红色,白色和蓝色。因此,如果数组类似于[2,0,2,1,1… 更多>

C ++中的螺旋矩阵

假设我们有一个矩阵,并且必须以螺旋方式打印矩阵元素。首先,从第一行开始,先打印整个内容,然后再打印最后一列,然后再打印最后一行,依此类推,从而以螺旋方式打印元素。所以如果矩阵像-123456789101112131415161718岁然后输… 更多>

Python中的Pow(x, n)

假设我们有两个输入x和n。x是一个介于-100.0到100.0之间的数字,并且n是一个32位有符号整数。我们必须不使用库函数而将x乘以n。因此,如果给定输入为x = 12.1,n = -2,则输出将为0.00683为了解决这个问题,我们将遵… 更多>