摘要:
一维数组 & C++ #include<vector> vector<int> a[n]; 或者 int* a = new int[n]; 然后就可以通过a[i]来索引了。 注意:new注意delete vector 初始化为二维,元素全为0 vector<vector<int> > myvec(r 阅读全文
摘要:
初学c++,写下这样一段代码 1 #include<iostream> 2 #include<string> 3 using namespace std; 4 5 int main() 6 { 7 string s = "qwertyui"; 8 // cout << typeid(s.length 阅读全文
摘要:
转载自知乎:C++ 虚函数表剖析 一、概述 为了实现C++的多态,C++使用了一种动态绑定的技术。这个技术的核心是虚函数表(下文简称虚表)。本文介绍虚函数表是如何实现动态绑定的。 二、类的虚表 每个包含了虚函数的类都包含一个虚表。 我们知道,当一个类(A)继承另一个类(B)时,类A会继承类B的函数的 阅读全文
摘要:
O(1)的空间内合并两个链表 python class ListNode: def __init__(self, x): self.val = x self.next = None def merge(l1, l2): head = point = ListNode(0) while l1 and 阅读全文
摘要:
问题 ps:部分代码参考leetcode和剑指offer。另外,三道题目都可以通过HashMap和Hashset做 1、只出现一次的数字 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 def singleNumber(nums): """ 异 阅读全文
摘要:
转载自Python标准库模块之heapq 最大堆 最大堆确保父堆大于或等于它的两个子堆。 最小堆 最小堆要求父堆小于或等于其子堆。Python的heapq模块实现了一个最小堆。 内置函数 heapq.heappush(heap, item) 将 item 的值加入 heap 中,保持堆的不变性。 h 阅读全文
摘要:
前言 题目 输入一个正整数数组,把数组里面的所有属猪拼接起来成为一个数打印能拼接起来的所有数字中最大/最小的那个。 思考 直观想法就是求出这个数组中所有数字的全排列,然后拼接起来,再比较大小即可,当然复杂度过高。 另一个想法,我们可以定义一个排序规则,如下: 如果两个数m,n能拼接成数字mn,nm, 阅读全文
摘要:
git add 文件 git add 添加多个文件,文件之间以空格隔开 git add file1 file2 file3 多次git add git add file1 git add file2 git add file3 添加指定目录下的文件 source目录下及子目录下所有文件,home目录 阅读全文
摘要:
前提 如果题目求解目标是S规则,则求解流程可以定成以每一个节点为头节点的子树在S规则下的每一个答案,并且最终答案一定在其中。 套路: 以某个节点X为头节点的子树中,分析答案有哪些可能性,并且这种分析是以X的左子树、X的右子树和X整棵树的角度来考虑可能性的 根据第一步的可能性分析,列出所有需要的信息 阅读全文
摘要:
前言 一直在使用github下载代码,但是从来没有上传过自己的代码,网上看了一些教程,尝试了一下,记录。 正篇 0、首先你要有一个github账号,注册网址:https://github.com/join 1、首先,按照下图,创建一个自己的项目 2、创建完成以后,你会看到如下界面,记住仓库地址。 3 阅读全文