自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 收藏
  • 关注

原创 bash

目录bash是一个shellbash shell的内置命令:typeshell的变量功能bash是一个shellshell是提供用户操作系统的一个接口,通过这个接口可以调用其他软件,比如man、chmod、vi等命令都是独立的应用程序,可以通过shell来操作这些应用程序,让这些应用程序调用内核来运行所需要的工作。内核(比如CPU进程、磁盘输入输出等)可以控制硬件来工作。b...

2019-10-21 17:45:20 477

原创 计算机概论

电脑的五大单元:输入单元,输出单元,内存,控制单元,算数逻辑单元cpu两种类型:RISC(reduced instruction set computer)精简指令;CISC(complex instruction set computer)复杂指令cpu内置的内存控制芯片对内存的工作频率最高是1600MHz(每秒几次),一般来说,每次频率能传输的数据量,大多为64位(电脑是32位还是64...

2019-10-21 10:51:02 324

原创 vim功能使用

光标移动 行首 0 、fn + 左箭头行尾 $ 、fn + 右箭头文首 gg文尾 G某行 nG (eg: 4G表示光标跳到第四行)光标右移n字符 n<space> (eg: 4<space>表示光标右移4字符) 删除 删除光标所在行 dd删除光标所在n行...

2019-07-21 18:32:51 250

原创 【latex】

镜像下载地址:www.tug.org/texlive/——on DVD——downloading the TeX Live ISO image and burning your own DVD——download from a nearby CTAN mirror——texlive2019.iso——install-tl-advanced.batoverleaf在线编辑/各类模板————...

2019-05-29 10:33:24 172

原创 Word页眉页码、公式编号、引用文献编号

页眉1、新建页眉想删掉。如果点击删除页眉会全部删掉。如果只删掉文字就会留下一条线。这个时候就在【开始】菜单中把边框设置为无边框,即可将单页的页眉删掉。2、想删掉封面和目录的页眉,从正文开始保留。【页面布局】-【分隔符】-【下一页】。在每个节点的时候都插入这个分页分隔符,这样是分小节。然后在每个节点都取消勾选链接上一节。页码1、想从正文开始出现页码。和页眉的分小节处理一样。但是要注意...

2019-04-08 17:06:18 3394 1

原创 【c++】

typedef或using:重定义类型struct结构#include &lt;iostream&gt;#include &lt;iomanip&gt;using namespace std;struct MyTimeStruct{ int year; int month; int day;};int main(){ MyTimeStruct MyTime = ...

2019-03-09 15:40:07 161

原创 【c++】第一二章

机器语言汇编语言高级语言软件=程序+文档————————————————————————————————封装:有限的对外接口,安全性好继承:意义在于软件复用改造扩展已有类来形成新的类多态:同样的消息作用在不同对象上可能引起不同的行为同样是打击行为,打篮球打乒乓球的方法和规则都不一样—————————————————————————————————...

2018-12-25 20:34:16 273

原创 【leetcode】841. Keys and Rooms

note:set集合的添加方法1、a = set('boy')         #a = set(['b', 'o', 'y'])       a.add('python')   #a = set(['b', 'o', 'y', 'python'])   当做一个整体加入2、a = set('boy')         #a = set(['b', 'o', 'y'])      ...

2018-12-15 15:23:41 152

原创 【剑指offer】扑克牌顺子

运行时间:24ms占用内存:5732k排序后判断的# -*- coding:utf-8 -*-class Solution: def IsContinuous(self, numbers): # write code here if not numbers: return None numbers.so...

2018-10-21 21:51:56 256

原创 【剑指offer】翻转单词顺序列

运行时间:28ms占用内存:5848kPython依然简单,split之后reverse再join即可,只是还是忘记特殊情况的处理# -*- coding:utf-8 -*-class Solution: def ReverseSentence(self, s): # write code here mylist = s.split() ...

2018-10-21 21:09:49 209

原创 【剑指offer】左旋转字符串

运行时间:31ms占用内存:5732kPython很简单,因为字符串可以看做迭代器,直接切片分开即可# -*- coding:utf-8 -*-class Solution: def LeftRotateString(self, s, n): # write code here if not s: return s ...

2018-10-21 21:04:44 135

原创 链表的归并、快排

# Definition of ListNodeclass ListNode(object): def __init__(self, val, next=None): self.val = val self.next = next class Solution: """ @param: head: The head of link...

2018-10-14 00:04:12 157

原创 Python 异或寻找只出现一次的两个数

 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。例如数组为{1,3,5,7,1,3,5,9},找出7和9。/* 解法1:1、思路:(1)对于出现两次的元素,使用“异或”操作后结果肯定为0,那么我们就可以遍历一遍数组,对所有元素使用异或操作,那么得到的结果就是两个出现一次的元素的异或结果。(2)因为这两个元素不相等,所以异或的结果肯定不是0...

2018-10-10 22:38:45 1087

原创 数组元素交叉排列

https://blog.csdn.net/caopengcs/article/details/10196035https://blog.csdn.net/yuan8080/article/details/5705559

2018-09-28 11:36:31 867

原创 最长回文串(可不连续)、构成回文串需添加的最少字符

寻找回文串可以正序和倒序找非连续的公共子串,动归算法,最长公共子串为a则构成回文串需添加的最少字符为len(str)- ahttps://blog.csdn.net/carson0408/article/details/77776398有空补代码...

2018-09-25 21:56:57 389

原创 【剑指offer】和为S的连续正数序列

以为是n-sum题,输出所有的组合的可能,但是不是的,更简单一些,因为限制条件是必须连续的数两种方法第一种,利用数学知识归纳,数列长度为n,分成n为奇数和n为偶数两种情况import java.util.ArrayList;public class Solution { public ArrayList&lt;ArrayList&lt;Integer&gt; &gt; Fi...

2018-09-25 10:34:50 239

原创 【剑指offer】数组中只出现一次的数字

remove:删除特定元素第一次出现的时候,返回的是删除后的数组del:删除指定索引的元素 del a[2],返回的是删除后的数组pop:删除指定索引的元素,返回的是删除的元素有一个问题就是我不知道判断not in list 的时候O(n)的复杂度会不会影响运行时间:36ms占用内存:5624k# -*- coding:utf-8 -*-class Solution:...

2018-09-24 16:13:31 135

原创 【剑指offer】判断二叉树是否为平衡二叉树

平衡二叉树(Balanced Binary Tree),具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。第一种递归思路,根据定义来,递归返回(r-l)&lt;1 and balancetree(r) and balancetree(l)但是这个自顶向下的递归下层结点会进行多次访问,相当于访问次数为1+2+。。。+n,时间复杂度为O(...

2018-09-24 15:43:31 149

原创 【剑指offer】二叉树的深度

层次遍历运行时间:28ms占用内存:5752k# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass Solution: de...

2018-09-24 15:15:48 165

原创 【剑指offer】数字在排序数组中出现的次数

想的是先二分查找,找到之后再找周围是否有相同运行时间:27ms占用内存:5752k# -*- coding:utf-8 -*-class Solution: def GetNumberOfK(self, data, k): # write code here if k not in data: return 0 ...

2018-09-24 15:00:25 123

原创 【剑指offer】两个链表的第一个公共结点

一个结点的next只有唯一确定的结点,所以若有公共结点,则第一个公共结点后的所有结点也必都为公共结点。先求出两个链表分别的长度,然后长的链表先走完长度差,然后再同时开始走,直到走到第一个相同结点。运行时间:36ms占用内存:5840k# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# ...

2018-09-24 14:40:40 89

原创 【剑指offer】数组中的逆序对

在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007使用归并排序,复杂度O(nlogn)若num[i]&lt;num[j]就是顺序对;若num[i]&gt;num[j]则是逆序对,而num[i~mid]区间所有值都会大于num[j],cnt+...

2018-09-24 14:08:43 111

原创 【剑指offer】第一个只出现一次的字符

运行时间:42ms占用内存:5856k用counter字典很简单# -*- coding:utf-8 -*-class Solution: def FirstNotRepeatingChar(self, s): # write code here from collections import Counter cs = Cou...

2018-09-24 11:55:32 100

原创 【剑指offer】丑数

我想的是判断丑数,超时;实际上可以自己去构造丑数超时的:# -*- coding:utf-8 -*-class Solution: def GetUglyNumber_Solution(self, index): # write code here def is_ugly(number): while (number%2==0)...

2018-09-24 11:48:42 90

原创 【剑指offer】把数组排成最小的数

输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。其实就是数组排序,只不过不是看自己数字的大小,而是比较和其他数字组合的时候,是不是自己放在前面的时候更小,是的话自己就能对比于那个数字放在前面。&gt;&gt;&gt; d = {'data1':3, 'data2'...

2018-09-24 11:14:28 162

原创 【剑指offer】从1到n中1出现的次数

设N = abcde ,其中abcde分别为十进制中各位上的数字。 如果要计算百位上1出现的次数,它要受到3方面的影响:百位上的数字,百位以下(低位)的数字,百位以上(高位)的数字。① 如果百位上数字为0,百位上可能出现1的次数由更高位决定。比如:12013,则可以知道百位出现1的情况可能是:100~199,1100~1199,2100~2199,,...,11100~11199,一共12...

2018-09-24 10:09:27 161

原创 矩阵旋转

# -*- coding:utf-8 -*-import sysimport copy# 逆时针旋转90# 空间复杂度O(n^2),矩阵行列数无约束def ni_convert(a): m = len(a[0]) b = [[j[m-1-i] for j in a] for i in range(m)] return b# 逆时针旋转90# 前提是矩阵为N*N方阵# 空...

2018-09-23 23:41:23 171

原创 Python小程序

#coding=utf-8import sys----------Python2中输入整数------------N = input() ---------Python2、3中输入字符-----------s = raw_input()------------字符串转整数list--------------A = list(map(int,s.strip().split(' ')...

2018-09-23 19:33:50 363

原创 区块链或后端方面面经

1.      线程栈:先是会自动扩展,到达最大值才会溢出,溢出之后程序会收到一个段错误(java表现为异常),调高堆栈容量可能会增加内存开销和启动时间2.      堆和栈的区别:(总结,栈的一切由系统管理,所以堆有各种碎片问题)•        管理方式:栈由编译器自动管理;堆由程序员控制,使用方便,但易产生内存泄露。•        生长方向:栈向低地址扩展(即”向下生长”),是...

2018-09-20 18:00:23 1587

原创 八皇后问题

递归写法: # -*- coding:utf-8 -*-import sysimport copyglobal cntcnt = 0def not_danger(i,j,chess): for ii in range(i): if chess[ii][j]==1: return 0 ii,jj = i,j while (ii-1&gt;=0 and jj-1&gt;...

2018-09-12 13:40:27 109

原创 排序算法

#coding=utf-8#具有稳定性的算法:冒泡排序、插入排序、基数排序、归并排序#堆排序、归并排序:平均、最好、最坏均为O(nlogn);选择排序:平均、最好、最坏均为O(n^2)#快排:平均、最好为O(nlogn),最坏为O(n^2)#冒泡、插入排序:最好O(n),最坏和平均为O(n^2)#希尔排序:最坏O(n^1.3),最好O(n^2)#基数排序:O(d(n+k)),其中d为...

2018-09-02 13:33:42 93

原创 NOWCODER 剑指offer 最小的k个数

运行时间:33ms占用内存:5712k用sorted很简单# -*- coding:utf-8 -*-class Solution: def GetLeastNumbers_Solution(self, tinput, k): # write code here if k&gt;len(tinput): return ...

2018-08-29 12:17:17 130

原创 NOWCODER 剑指offer 数组中出现次数超过一半的数字

运行时间:27ms占用内存:5728k用counter很容易实现# -*- coding:utf-8 -*-from collections import Counterclass Solution: def MoreThanHalfNum_Solution(self, numbers): # write code here if not ...

2018-08-27 14:30:53 109

原创 NOWCODER 剑指offer 字符串的排列

运行时间:57ms占用内存:5656k递归做的,主要是要考虑重复的问题,然后记得仔细检查条件语句看到大家讨论的答案都比较复杂,详细记录一下自己的思路其实就是做有重复元素的全排列工作,所以先固定第一位,然后是递归调用全排列函数(全排列除第一位之外的其他元素)。此时要考虑的是第一位不能同时出现多次重复元素,这就是每次轮到重复元素时,处理完后就把重复元素的count设置为0,接下来的...

2018-08-27 09:18:07 169

原创 NOWCODER 剑指offer 二叉搜索树与双向链表

原来题意的双向链表是left和right。小数指向大数是right,大数指向小数是left看了一下非递归算法,很妙,刚好是中序遍历的非递归运行时间:26ms占用内存:5732k需要注意第一次的时候,只是把中序遍历的第一个结点找到而已# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# ...

2018-08-25 00:14:30 94

原创 NOWCODER 剑指offer 复杂链表的复制

用的最直接的建立一个一个node再建立next或者random关系运行时间:33ms占用内存:6720k# -*- coding:utf-8 -*-# class RandomListNode:# def __init__(self, x):# self.label = x# self.next = None# sel...

2018-08-24 22:34:54 148

原创 NOWCODER 剑指offer 二叉树中和为某一值的路径

题意原来是一定要从根节点一直到叶子结点,不能去中间结点路径一个可以从根不取到叶子结点的方法(最后序列没有根据长度排序),深度遍历# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# s...

2018-08-24 21:32:54 107

原创 NOWCODER 剑指offer 二叉搜索树的后序遍历

注意二叉树和二叉搜索树的区别运行时间:27ms占用内存:5624k思想就是后序遍历,左右根;而搜索树,一定是左子树都小于根小于右子树。所以后续遍历每次序列的最有一个元素都是序列的中间值。# -*- coding:utf-8 -*-class Solution: def VerifySquenceOfBST(self, sequence): # write...

2018-08-24 17:09:47 100

原创 NOWCODER 剑指offer ※从上到下打印二叉树

教训:1、空序列的话返回[]而不是None2、for i in list:  如果最后一个循环list改变值的话,并不会再循环下去运行时间:31ms占用内存:5720k思路:每次保存上一层的所有结点,当左右子树都为空时,返回结果列表# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):#...

2018-08-24 16:28:44 82

原创 NOWCODER 剑指offer 栈的压入、弹出序列

运行时间:29ms占用内存:5860k一次通过(除了开头检查pop序列数字是不是在push中存在)思路是:但凡取了一个元素,说明元素前的所有元素都必然已经在栈中。开辟一个left序列保存一定已经在栈中的元素,所以下次取元素的时候一定不能取除最末尾外的其他在left中的元素。下次再取元素,则又将此元素前的元素加入left序列中。# -*- coding:utf-8 -*-clas...

2018-08-24 15:07:15 98

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除