2 m0_37586991

尚未进行身份认证

暂无相关描述

等级
博文 116
排名 2w+

python【剑指offer】顺时针打印矩阵

把矩阵想象成若干个圈,可以用一个循环来打印矩阵,每次打印矩阵中的一个圈。defprint_matrix(matrix):""":parammatrix:[[]]"""rows=len(matrix)cols=len(matrix[0])ifmatrixelse0start=0ret=[]...

2019-06-18 09:32:34

python【剑指offer】二维数组中的查找 递归与非递归的实现

文章目录解题思路递归非递归解题思路数组是长下面这样的,从左到右递增,从上到下递增。在遍历每一行的时候,如果遍历到一个元素大于target,那么当前元素所在的列及之后的列都不用遍历了。例如target=7,遍历第一行元素,因为8>7,所以可以不必考虑8所在的列及之后的列。把数组更新为array[1:,:2](如果是numpy的矩阵,是可以这样的),但是这里是列表,所以还是要用列表...

2019-06-15 16:08:51

python【树】列表实现、类实现

文章目录列表实现类实现列表实现树的结构是root=[r,[],[]]root[0]=根结点,root[1]=左子树,root[2]=右子树插入操作,会把新的节点当作原来节点的父节点。defBinaryTree(r):return[r,[],[]]definsertLeft(root,newBranch):#root[0]=根结点,root[1]=...

2019-06-13 19:31:54

python【排序】冒泡、选择、插入、归并、快速排序

文章目录冒泡排序写法一写法二短冒泡排序冒泡排序写法一defbubbleSort(alist):forpassnuminrange(len(alist)-1,0,-1):foriinrange(passnum):ifalist[i]>alist[i+1]:alist[i],alist[...

2019-06-12 20:38:29

python实现哈希表

文章目录哈希表的概念哈希表的实现程序运行123456哈希表的概念哈希函数:一个把查找表中的关键字映射成该关键字对应的地址的函数,即为Hash(key)=Addr。哈希表:是根据关键字而直接进行访问的数据结构。也就是说,哈希表建立了关键字和存储地址之间的一种直接映射关系。哈希表的实现假设哈希表长度为11,分别用两个列表来保存关键字和数据。代码中的print()函数是为了方便理解,才加上的...

2019-06-12 19:26:49

python【栈】进制转换

文章目录十进制转二进制十进制转任意进制十进制转二进制其中Stack除了利用import导入,也可以自己实现,请看这里frompythonds.basicimportStackdefdivideBy2(decNumber):remstack=Stack()whiledecNumber>0:rem=decNumber%2...

2019-06-12 09:35:39

【递归】进制转换、字符串反转、判断回文

文章目录进制转换——十进制转为任意进制递归栈进制转换——十进制转为任意进制递归deftoStr(n,base):convertString="0123456789ABCDEF"ifn<base:returnconvertString[n]else:returntoStr(n//base,base)+convertS...

2019-06-12 09:28:24

python实现双端队列并解决判断回文字符串的问题

文章目录双端队列示意图双端队列的基本操作双端队列的应用:判断回文字符串双端队列示意图双端队列的基本操作右边的元素是队头classDeque:def__init__(self):self.items=[]defisEmpty(self): #判断是否为空returnself.items==[]...

2019-06-11 19:40:31

pytho实现队列并解决约瑟夫环问题

文章目录队列示意图队列的基本操作队列的应用:约瑟夫环队列示意图队列的基本操作classQueue:def__init__(self):self.items=[]defisEmpty(self): #判断是否为空returnself.items==[]defenqueue(self,item...

2019-06-11 19:04:41

python【栈】 后缀表达式求值

文章目录题目思路题目根据后缀表达式,求出运算结果。假设:后缀表达式是由空格为分隔符的字符串操作符是*,/,+,-操作数都是个位数代码中的Stack()来自于python实现栈Stack思路创建一个空栈operandStack把后缀表达式postfixExpr由字符串转为列表tokenList从左到右扫描这个列表tokenList中的每一个token1.如果to...

2019-06-11 16:28:57

python【栈】中缀表达式转后缀表达式

文章目录题目思路题目把中缀表达式转为后缀表达式,如:(A+B)∗C−(D−E)∗(F+G)(A+B)*C-(D-E)*(F+G)(A+B)∗C−(D−E)∗(F+G)转为AB+C∗DE−FG+∗−AB+C*DE-FG+*-AB+C∗DE−FG+∗−思路创建一个字典,prec,用来保存运算符的优先级创建一个空栈,opStack,用来保存运算符...

2019-06-11 15:49:27

python 【栈】判断括号匹配问题

frompythonds.basicimportStackdefparChecker(symbolString):s=Stack()balanced=Trueindex=0whileindex<len(symbolString)andbalanced:symbol=symbolString[index]...

2019-06-11 11:20:13

python实现栈Stack

用list来实现栈,栈的top元素为list[-1],base元素为list[0]classStack:def__init__(self):self.items=[]defisEmpty(self):#判断是否为空returnself.items==[]defpush(self,item...

2019-06-11 10:23:00

python 字典的时间复杂度

参考:https://runestone.academy/runestone/static/pythonds/AlgorithmAnalysis/Dictionaries.html

2019-06-11 09:32:10

python 列表的时间复杂度

参考:https://runestone.academy/runestone/static/pythonds/AlgorithmAnalysis/Lists.html

2019-06-10 21:43:10

判断两个词是否为易位构词(anagram)

文章目录题目解答思路一:逐个检查时间复杂度O(n^2)解答思路二:排序并比较时间复杂度O(n^2)或O(nlogn)解答思路三:暴力破解时间复杂度O(n!)解答思路四:利用字母出现的次数时间复杂度O(n)题目易位同构词是指,一个词是另一个词的字母重排列,比如"heart"和"earth","python"和"typhon"均互为易位同构词。我们的目标是写一个判断函数,参数是两个...

2019-06-10 20:56:37

python中的@方法

python中的@方法,也就是matmul方法,可以实现矩阵乘法。矩阵乘法使用dot函数importnpS=np.dot((np.dot(H,beta)-r).T,np.dot(inv(np.dot(np.dot(H,V),H.T)),np.dot(H,beta)-r))使用dot方法importnpS=(H.dot(beta...

2019-06-10 16:25:31

实现一个分数类,包括加减乘除比大小等操作

defgcd(m,n):whilem%n!=0:oldm=moldn=nm=oldnn=oldm%oldnreturnnclassFraction:def__init__(self,top,bottom):self.num=t...

2019-06-10 16:12:44

从上往下打印二叉树

文章目录题目解答参考题目从上往下打印出二叉树的每个节点,同层节点从左至右打印。解答/*structTreeNode{ intval; structTreeNode*left; structTreeNode*right; TreeNode(intx): val(x),left(NULL),right(NULL){ }};*/classSolut...

2019-06-09 16:57:58

删除链表中重复的结点

文章目录题目解答思路一解答思路二题目在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。例如,链表1->2->3->3->4->4->5处理后为1->2->5.解答思路一/*structListNode{intval;structListNode*next;...

2019-06-09 16:03:43
奖章
  • Github
    Github
    绑定github第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周上午根据用户上周的博文发布情况由系统自动颁发。