1 catch_dreamer

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 10w+

PyQt5程序的基本结构及简单示例

基本结构一个PyQt5程序,总的来说分为以下几个步骤:创建一个QApplication(sys.argv)对象app(app表示对象名,可以自拟)这一步的目的是创建一个Qt应用程序对象,所有的PyQt5应用程序必须要有这个对象。其中sys.argv参数是一个列表,可以接受从命令行输入的参数(字符串格式),这些参数被组成一个列表。进行控件的操作在这一步,主要的内容是创建控件、设置样式、为添加添加相关的响应处理等。最后调用顶层控件的show方法将控件展示在屏幕上。正式启动程序,然后进入到消息循环当

2020-05-28 16:54:43

LeetCode190——颠倒二进制位

题目颠倒给定的 32 位无符号整数的二进制位。参考一1、用bin函数将其转为对应的二进制字符串,然后切割出“0b”后面的内容2、用zfill()函数将其填充到32位长度3、然后反转zfill()返回的字符串,最后将其转为十进制整数即可。代码:# 方法一def translate(s: int): res = bin(s)[2:] # 将s转为对应的二进制字符串 res = re...

2020-03-26 11:31:37

LeetCode每日一题——岛屿的最大面积

题目:给定一个包含了一些 0 和 1的非空二维数组 grid , 一个 岛屿 是由四个方向 (水平或垂直) 的 1 (代表土地) 构成的组合。你可以假设二维矩阵的四个边缘都被水包围着。找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则返回面积为0。)来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/max-area-of-island...

2020-03-15 21:09:42

leetcode每日一题——多数元素

题目给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/majority-element著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。参考解法从多数元素...

2020-03-13 11:14:20

leetcode——27.移除元素解答参考

题目(题目来源:力扣(LeetCode))给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/pr...

2020-03-08 19:13:10

selenium之frame切换、窗口切换及各种选择框和弹出框

frame切换一般来讲,我们无法直接通过webdriver对象拿到frame或者iframe中的元素,这时我们就需要切换到frame或者iframe中去,方法为调用webdriver对象的switch_to.frame()方法。方法里面可以传入iframe和frame的id等属性值用以选择出该frame。具体如下:browser.switch_to.frame(browser.find_ele...

2020-01-18 10:55:27

python实现单向链表

节点类的实现class Node: def __init__(self,value,next=None): self.value = value self.next=next链表类的实现class Link: def __init__(self): self.pHead = Node(-1) # 创建一个虚拟节点 def get_length(...

2020-01-01 18:30:10

归并排序——python实现

归并函数实现def merge(arr,left,middle,right): if left < right: #当left<right的时候,进行归并 i = left j = middle+1 temp = [] while i<=middle and j<=right: # 遍历数组两半的公共部分 if arr[i]<=arr[j]:...

2019-12-31 16:19:34

基础排序(冒泡,选择,插入)——python实现

冒泡排序冒泡排序需要用到双重循环,第一个循环用于记录遍历的次数,而第二个循环用于控制遍历的位置,每遍历一次,就会排好最右边一个数的位置。实现代码:def bubble_sort(arr): i = 0 length = len(arr) for i in range(0,length): for j in range(0,length-(i+1)): #减掉遍历的次数是因为这右边...

2019-12-31 14:27:10

堆栈——链表实现(链式栈)(C++版)

定义前面说了用数组(顺序表)实现堆栈,用数组实现堆栈这种方法既高效又简单,但是在描述两个以上的堆栈时,虽然可以提高空间利用率,但是却增加了Add操作的时间复杂度。除此之外,也可以使用链表的方式来实现一个堆栈来解决上述问题,这种方式虽然使每个元素多了一个指针的空间,但是却使时间复杂度得到了有效的降低。一般来讲,我们将链表的左端作为top指针所指向的位置,这样可以降低编码的复杂性和操作的时间复杂性...

2019-12-30 14:32:20

树及二叉树

树的相关概念树: 树(tree)是一个非空的有限元素的集合,其中一个元素为根(root)元素,而剩下的元素组成子树(如果有其余的元素)。树的级: 树的常用概念之一就是级,我们规定根节点的级数为1,根节点的子节点的级数为2,根节点的子节点的子节点的级数为3,以此类推。树的度: 我们将一个节点拥有子节点的个数称为该节点的度,由此可知,叶节点的度数一定为0,而完全二叉树中根节点及其非末尾节点的度数...

2019-12-30 14:29:02

python操作Excel(xlwt、xlrd、xlutils)

简介python中通过xlwt、xlrd和xlutils三个模块操作xls文件。这三个模块的区别如下:xlwt:xlwt用于在内存中生成一个xlsx/xls对象,增加表格数据,并把内存中的xls对象保存为本地磁盘xls文件。xlrd:xlrd用于把本地xls文件加载到内存中,可以读取xls文件的表格数据,查询xls文件的相关信息。xlutils:xlutils模块是xlrd和xlwt之间...

2019-12-27 17:50:06

用邻接表表示图

如下图用邻接表表示上图的结果如下用python实现保存一个图的邻接表class Graph: def __init__(self,n): #n表示顶点的个数 self.vertexList = [] #保存顶点的数组 self.HeadNodes = [[i] for i in range(n)] #保存边 self.n = n #...

2019-12-21 17:50:10

用临界矩阵表示图

示例假设有如下一个图:其临界矩阵的表示结果如下:如上图,与某个节点相连的节点均用1表示,比如与A节点相连的有B和C,那么(A,B)和(A,C)位置就用1表示。python实现邻接矩阵注意此处不能用[0]*n来创建列表。class Graph: def __init__(self): self.vertexList = [] #用来记录图的顶点的列表 ...

2019-12-21 15:36:36

堆栈——顺序栈(C++实现)

堆栈定义堆栈本质是一个线性表,其插入和删除操作都在表的同一端进行,其中表的两端分别被称为栈顶和栈低。堆栈的结构如下:刚开始的时候,top指向栈底,然后每进入一个元素,top指针就上移一位,每删除一个元素,top就下移一位。这个过程称为出栈入栈。图解如下(来自于《数据结构算法与应用-C++语言描述》):如上图,如果入栈一个元素E,那么结果如图b所示,如果图b出栈三个元素,那么结果如图c所示...

2019-12-17 12:05:26

C++头文件编写方法

方法:创建一个.h类型的头文件,然后在文件中加上下面代码#ifndef CIRCLE_H //这个名字也可以自定义#define CIRCLE_H//在这里写自己的代码#endif实例:编写一个头文件,定义一个函数,输出"helloworld"。1、建立一个名为“printhe.h”的文件,编写如下代码#ifndef CIRCLE_H#define CIRCLE_Hvoi...

2019-12-17 12:04:44

其他命令(echo、重定向、管道)

1、echo命令作用会在终端中显示参数指定的文字,通常会和重定向联合使用。格式echo 参数名示例:echo hello2、重定向>和>>基本概念Linux允许将一个命令的执行结果重定向到一个文件,将本应显示在终端里的内容追加到指定文件中。其中,>表示输出,会覆盖掉文件原有的内容,相当于python中open函数的w模式,而>>表示追加,会将内容...

2019-12-17 11:19:32

Linux的文件和目录命令(ls、cat、cd、mkdir、rm、touch)

查看目录或文件内容——ls & cat1、ls命令ls命令用于查看某个目录的内容,相当于dos系统中的dir命令。在Linux系统中,如果我们想把某个文件设置为隐藏文件,那么只需要在该文件的文件名前面加.即可。在终端中,.表示当前目录,而..表示上级目录,/表示根目录,~表示当前用户的目录,在home目录的下一级。2、ls和通配符的组合使用Linux中主要的通配符为为:*:...

2019-12-17 11:14:36

C++中的函数与参数

传值参数传值参数的特点及传值过程先看下面的一个实例:int result(int a,int b,int c){ return a+b+c+(a+b+c)/3;}在以上程序中,a,b和c都是函数result的形式参数(formal parameter),类型均为整型,如果用以下语句调用此函数:result = result(5,y,z);那么,在调用语句中,5,y和z分别是对应...

2019-11-22 18:02:32

C++中的递归

递归的定义所谓递归,就是在一个函数的内部调用这个函数,那么递归自然包含调用这个函数的部分,为了终止递归的过程,还需要定义一个递归终止的条件。递归的简单结构:返回值类型 函数名(参数){ if(递归终止条件){ 终止递归; } else{ 包含本函数调用的语句 }}实例1:用递归求斐波拉契数列首先,斐波拉契数列是指:1,1,2,3,5,…,n这样的数字,其中,第n个数...

2019-11-21 22:42:16

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。