MongoDB 【MongoDB】查询某属性不为null的文档 使用$exists,如下: db.getCollection('info').find({"name":{"$exists":true}})
虚拟机 Vagrant安装 在学习区块链项目 Hyperledger Fabric时,因为他们使用了Vagrant作为虚拟机,所以,就先学习了一下Vagrant,下面是vagrant的安装教程。 概述 Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境。 下载 官网https://www.vagrantup.com/downloads.html下载比较慢,当前版本为 1.8.6 另外,需要下载并安装VirtualBox [https://www.virtualbox.org/wiki/Downloads] 安装
算法 【算法导论-学习笔记】以线性时间增长的排序——计数排序 计数排序是一种能够达到运行时间能够线性时间θ(n)的排序算法。在排序算法里算是最快的算法之一,当然,他有很强烈的前提。下面开始介绍一下计数排序(Counting Sort)。 算法思想 计数排序假设n个输入元素中的每一个都是介于0到k之间的整数,此处k为某个整数。这样可以用一个数组C[0..k]来记录待排序数组里元素的数量。当k=O(n)时,计数排序的运行时间为θ(n). > 注:关于C[0..k],用键值对描述的话,待排序元素是键,相同元素的个数是值。例:待排序数组<2,3 , 6,4 , 1 , 1 , 3 , 5 , 7> 一共9个元素,切每一个都处于0到7之间,2>
算法 【算法】相反数 问题描述 有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。 输入格式 1. 第一行包含一个正整数 N。(1 ≤ N ≤ 500)。 2. 第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过1000,保证这些整数各不相同。 输出格式 1. 只输出一个整数,即这 N 个数中包含多少对相反数。 样例输入 5 1 2 3
算法 【算法】出现次数最多的数 问题描述 给定n个正整数,找出它们中出现次数最多的数。如果这样的数有多个,请输出其中最小的一个。 输入格式 1. 输入的第一行只有一个正整数n(1 ≤ n ≤ 1000),表示数字的个数。 2. 输入的第二行有n个整数s1, s2, …, sn (1 ≤ si ≤ 10000, 1 ≤ i ≤ n)。相邻的数用空格分隔。 输出格式 1. 输出这n个次数中出现次数最多的数。如果这样的数有多个,输出其中最小的一个。 样例输入 6 10 1 10
算法 【算法】ISBN号码 问题描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x ”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN 码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔之后的五位数字代表该书在出版社的编号;最后一位为识别码。 识别码的计算方法如下: 首位数字乘以1加上次位数字乘以2……以此类推,用所得的结果mod 11,所得的余数即为识别码,如果余数为10,则识别码为大写字母X。例如ISBN 号码0-670-82162-4中的识别码4是这样得到的:对067082162这9个数字,从左至右,
leetcode 【LeetCode】104. Maximum Depth of Binary Tree 问题描述 Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node. 求树的深度 代码
leetcode 【LeetCode】102. Binary Tree Level Order Traversal 问题描述 Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level). For example: Given binary tree [3,9,20,null,null,15,
leetcode 【LeetCode】101. Symmetric Tree 问题描述 Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). For example, this binary tree [1,2,2,3,4,4,3] is symmetric: 1
web前端 【Vue】元素未渲染前不显示{{}}变量 改为使用v-text指令进行绑定,如: {{Hello}} 改为 因为在前端vue.js下载后,加载框架、渲染Dom需要一段时间,在渲染完成前,页面上的元素会以普通Html元素显示,所以只要明明白白的写了{{变量}},就会以 Html的方式显示出来,改为指令描述后就没有这个问题了。
区块链 2017-01-05区块链新闻 今日关键词可视化: 用区块链改变人工智能:去中心化带来数据新范式 [http://www.8btc.com/blockchain-and-ai] 近年,从围棋到人类水平的语音识别,人工智能(AI)研究者终于在他们几十年一直努力探索的领域取得了突破。取得突破进展的关键一点是研究者们可以收集巨量的数据并「学习」这些数据,从而将错误率降低到可接受范围... 2017-01-05 09:00:59 关键词:研究者 错误率 AI
算法 【编程之美】中国象棋将帅问题 问题描述 在中国象棋里将和帅是不能碰面的,如下图所示,当将位于d10时,帅就不能在d1,、d2、d3。请写一个程序,输出将、帅所有的合法位置。要求在代码中仅用一个变量。 如果只是输出将、帅的合法位置,那这题就比较容易了,只要二重循环判断一下就行,但后面一个条件就将题目的难度上升了好多。 算法分析 因为是判断两个对象A、B的位置符不符合要求,而且每个对象一共就只有9个位置可选,可以比较快地想到程序的大体框架: 1. 遍历A的位置 2. 遍历B的位置 3. 判断A、B的位置组合是否满足要求 4. 如果满足,则输出 因为每个对象只有9个位置,所以循环次数一共也就81次。
C++ 【算法】检测数组里是否有两个数之和等于某个数 问题: 检测数组里是否有两个数之和等于某个数 解决方法一:先将数组排序,然后从两头开始遍历 数组排序后,从左端开始取最小值,从右端取最大值, 判断两者之和与目标的大小: 1. 等于时,输出两个数; 2. 大于时,右端移到第2个数,继续判断; 3. 小于时,左端移到第2个数,继续判断。 #include #include #include using namespace std; void fun1(int a[], int length, int
C++ 【算法】十进制字符串转十六进制字符串 问题描述 将一个十进制字符串转化为十六进制字符串。 问题解决 这个问题如果只是十进制转化为十六进制,其实是比较容易的,只要了解短除法就可以解决了,但题目里数是字符串,这就将题目的难度增高了。因为如果只是int型,那最多也就支持个10位数;但字符串却可以上千位,所以我们使用短除法的时候会比较麻烦。 这里我先将字符串转成了int型,先把简单的10位数的实现出来,来理顺一下思路。下面是10进制数转16进制的代码: int main(){ string s; while (cin >> s){ int n = 0; // 将字符串转换为int类型 for (int i = s.length() -
C++ 【ACM】K尾相等数 问题描述: 从键盘输入一个自然数K(K>1),若存在自然数M和N(M>N),使得K^M 和K^N均大于或等于1000,且它们的末尾三位数相等,则称M和N是一对"K尾相等数"。请编写程序,输出M+N最小的K尾相等数。 样例: 输入输出2120问题分析: 末尾三位数只有1000个,从1到无穷大增大幂次时,肯定会出现同样的末尾三位数,比如n=10时(`n^M`大于1000时才有末尾三位数),幂次M12345n^M 10100100010000100000末尾三位数无无000所以当幂次为3时出现了第一个三位数,当幂次为4时出现了第二个三位数,N = 3,
C++ 【算法】烙饼排序 问题描述: 把一摞大小不一的烙饼按顺序排好,大的在下面,小的在上面, 要求只能用一只手去翻转烙饼位置,另一只手要端盘子; 输出最优化的排序过程。 -------------------------------------------------------------------------------- 示例: 3 1 2 翻转 1 , 当前烙饼排序 3 2 1 成功! -------------------------------------------------------------------------------- 算法描述: 问题解析:一个未排序的数列,如 a,b,c,d,~z 每一次选取其中一个数,将它与最后一个数之间的 所有数(包含它们两个)
leetcode 【LeetCode】100. Same Tree 问题描述 Given two binary trees, write a function to check if they are equal or not. Two binary trees are considered equal if they are structurally identical and the nodes have the same
leetcode 【LeetCode】88. Merge Sorted Array 问题描述 Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: You may assume that nums1 has enough space (size that is greater or equal to
leetcode 【LeetCode】83. Remove Duplicates from Sorted List 问题描述 Given a sorted linked list, delete all duplicates such that each element appear only once. For example, Given 1->1->2, return 1->2. Given 1->1->2->3->3, return 1->
CentOS CentOS7 安装Docker 1 使用yum安装Docker yum install -y docker-io 2 启动Docker service docker start 接下来执行一下docker ps,会列出正在运行中的docker容器,当然,因为我们现在没有容器,列表只有表头。 3 安装Docker镜像 docker run ubuntu Docker会自动去仓库下载最新版本的ubuntu镜像,接下来就是在镜像上启动容器。如果下载超时的话,可以通过阿里云Docker镜像加速 [https://yq.aliyun.com/articles/29941]、使用DaoCloud加速
区块链 2017-01-04区块链新闻 今日关键词可视化: 《哈佛商业评论》:添加比特币支付选项可以帮助企业高管吸收区块链技术 [http://www.8btc.com/hbr-blockchain-is-foundational-not-disruptive-technology] 《哈佛商业评论》( Harvard Business Review,简称HBR)是哈佛商学院的标志性杂志。最新一期的杂志刊登了一篇有关区块链的文章,这篇文章表达了对炒作的怀疑。他们认为区块链是一种基础性技术,而不是颠覆性技... 2017-01-03 19:19:40 关键词:区块链 杂志 哈佛商学院 首个区块链移动数字汇票投入应用 [http://www.8btc.com/zheshang-bank-blockchain] 1月3日,
leetcode 【LeetCode】70. Climbing Stairs 问题描述 You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can you
leetcode 【LeetCode】67. Add Binary 问题描述 Given two binary strings, return their sum (also a binary string). For example, a = "11" b = "1" Return "100". 二进制加法 代码 class Solution { public: string addBinary(string a, string b) { int cur=