- 博客(52)
- 资源 (142)
- 收藏
- 关注
原创 隐私保护之zk-SNARK
zk-SNARK概述zk-SNARK,就是一个为了将实际的零知识证明类问题转为计算机程序问题的理论。全称“zero knowledge Succinct Non-interactive ARgument of Knowledge” 可以拆分为下面几点去理解:zero knowledge,零知识,即不透露任何有用的信息。 succinct,简洁的,主要是指计算机程序在验证的过程不涉及大量...
2019-10-24 09:29:55 1773 1
原创 ARM、Intel、MIPS处理器啥区别?
安卓支持三类处理器(CPU):ARM、Intel和MIPS。ARM无疑被使用得最为广泛。Intel因为普及于台式机和服务器而被人们所熟知,然而对移动行业影响力相对较小。MIPS在32位和64位嵌入式领域中历史悠久,获得了不少的成功,可目前Android的采用率在三者中最低。总之,ARM现在是赢家而Intel是ARM的最强对手。那么ARM处理器和Intel处理器到底有何区别?为什么ARM如此受欢...
2019-10-21 17:43:36 419 1
原创 二叉搜索树
二叉查找树(英语:Binary Search Tree),也称为二叉搜索树、有序二叉树(ordered binary tree)或排序二叉树(sorted binary tree),是指一棵空树或者具有下列性质的二叉树:若任意节点的左子树不空,则左子树上所有节点的值均小于它的根节点的值; 若任意节点的右子树不空,则右子树上所有节点的值均大于它的根节点的值; 任意节点的左、右子树也分别为二叉...
2019-10-21 17:19:41 294 1
转载 如何测试一辆自行车
题目:如何测试一辆自行车参考答案:开放性问题,如果联系到测试角度上看的话,可以这么作答:骑车试一试,看有没有问题,对应测试能不能跑通 看看车的核心部件,例如车闸,车把等,对应软件的核心功能 看看车是否安全,配锁质量如何,对应软件是否有安全问题...
2019-10-21 15:14:37 1552 1
转载 请评估一下程序的执行结果?
题目:请评估一下程序的执行结果?public class SynchronousQueueQuiz { public static void main(String[] args) throws Exception { BlockingQueue<Integer> queue = new SynchronousQueue<>()...
2019-10-21 15:13:55 441
转载 假如给你一个新产品,你将从哪些方面来保障它的质量?
题目:假如给你一个新产品,你将从哪些方面来保障它的质量?参考答案:可以从代码开发、测试保障、线上质量三个方面来保障。在代码开发阶段,有单元测试、代码Review、静态代码扫描等;测试保障阶段,有功能测试、性能测试、高可用测试、稳定性测试、兼容性测试等;在线上质量方面,有灰度发布、紧急回滚、故障演练、线上监控和巡检等。...
2019-10-21 15:13:15 743
转载 给定一个整数数组和一个整数,返回两个数组的索引,这两个索引指向的数字的加和等于指定的整数。需要最优的算法,分析算法的空间和时间复杂度
题目:给定一个整数数组和一个整数,返回两个数组的索引,这两个索引指向的数字的加和等于指定的整数。需要最优的算法,分析算法的空间和时间复杂度参考答案:public int[] twoSum(int[] nums, int target) { if(nums==null || nums.length<2) return new int[]{0,0}; ...
2019-10-21 15:12:17 687 1
转载 如果让你来设计一个支持数据库、NOSQL 和大数据之间数据实时流动的数据流及处理的系统,你会考虑哪些问题?如何设计?
题目:如果让你来设计一个支持数据库、NOSQL 和大数据之间数据实时流动的数据流及处理的系统,你会考虑哪些问题?如何设计?参考答案:开放性问题,无标准答案。...
2019-10-21 15:11:21 526
原创 如果让你设计一个通用的、支持各种数据库秒级备份和恢复的系统,你会如何设计?
题目:如果让你设计一个通用的、支持各种数据库秒级备份和恢复的系统,你会如何设计?参考答案:开放性问题,无标准答案。
2019-10-21 15:10:16 460 2
转载 给定一个链表,删除链表的倒数第N个节点,并且返回链表
题目:给定一个链表,删除链表的倒数第 N 个节点,并且返回链表的头结点。◼ 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 说明: 给定的 n 保证是有效的。 要求: 只允许对链表进行一次遍历。参考答案:我们可以使用两个指针而不是一个指针。第一个指针从列表的开头...
2019-10-21 14:49:18 1461
原创 最大频率栈
题目:最大频率栈。实现 FreqStack,模拟类似栈的数据结构的操作的一个类。FreqStack 有两个函数: push(int x),将整数 x 推入栈中。pop(),它移除并返回栈中出现最频繁的元素。如果最频繁的元素不只一个,则移除并返回最接近栈顶的元素。 ◼ 示例: push [5,7,5,7,4,5] pop() -> 返回 5,因为 5 是出现频率最高的。 栈变成 [5,7,...
2019-10-21 09:51:06 629
转载 在云计算大数据处理场景中,每天运行着成千上万的任务,每个任务都要进行 IO 读写。存储系统为了更好的服务,经常会保证高优先级的任务优先执行。当多个作业或用户访问存储系统时,如何保证优先级和公平性。
题目:在云计算大数据处理场景中,每天运行着成千上万的任务,每个任务都要进行 IO 读写。存储系统为了更好的服务,经常会保证高优先级的任务优先执行。当多个作业或用户访问存储系统时,如何保证优先级和公平性。参考答案:开放性问题,无标准答案。...
2019-10-21 09:49:49 1178
转载 你理解常见如阿里,和友商大数据平台的技术体系差异以及发展趋势和技术瓶颈,在存储和计算两个方面进行概述
题目: 你理解常见如阿里,和友商大数据平台的技术体系差异以及发展趋势和技术瓶颈,在存储和计算两个方面进行概述。参考答案:开放性问题,无标准答案。...
2019-10-21 09:48:56 300
转载 对大数据平台中的元数据管理是怎么理解的,元数据收集管理体系是怎么样的,会对大数据应用有什么样的影响
题目: 对大数据平台中的元数据管理是怎么理解的,元数据收集管理体系是怎么样的,会对大数据应用有什么样的影响。参考答案:开放性问题,无标准答案。...
2019-10-21 09:47:54 611
转载 请分析 MaxCompute 产品与分布式技术的关系、当前大数据计算平台类产品的市场现状和发展趋势。
题目:请分析 MaxCompute 产品与分布式技术的关系、当前大数据计算平台类产品的市场现状和发展趋势。参考答案:开放性问题,无标准答案。
2019-10-21 09:46:37 304
转载 一颗现代处理器,每秒大概可以执行多少条简单的MOV指令,有哪些主要的影响因素?
题目:一颗现代处理器,每秒大概可以执行多少条简单的MOV指令,有哪些主要的影响因素?参考答案:及格:每执行一条mov指令需要消耗1个时钟周期,所以每秒执行的mov指令和CPU主频相关。加分:在CPU微架构上,要考虑数据预取,乱序执行,多发射,内存stall(前端stall和后端stall)等诸多因素,因此除了cpu主频外,还和流水线上的效率(IPC)强相关,比较复杂的一个问题。...
2019-10-21 09:43:18 1446
转载 请计算XILINX公司VU9P芯片的算力相当于多少TOPS,给出计算过程与公式
题目:请计算XILINX公司VU9P芯片的算力相当于多少TOPS,给出计算过程与公式。参考答案:基于不同的算法,这个值在十几到几百之间。但是,如果只是单纯比算力,FPGA和ASIC、GPU相比并无太大优势,甚至大多时候有较大劣势。FPGA的优势在于高度的灵活性和算法的针对性。...
2019-10-21 09:41:11 5375
原创 如何判断两个链表是否相交
题目:如何判断两个链表是否相交参考答案:O(): 两层遍历,总能发现是否相交O(n): 一层遍历,遍历完两个链表,如果两个链表的最后一个结点指针相同,则相交,否则不相交问题描述问题一: 如何判断一个链表是否有环,如果有, 则返回第一个进入环的节点, 没有则返回null.问题二: 如何判断两个无环链表是否相交, 相交则返回第一个相交节点, 不相交则返回null.问题三:...
2019-10-18 18:08:40 1286 2
转载 关于并行计算的一些基础开放问题
题目: 关于并行计算的一些基础开放问题。◼ 如何定义并计算,请分别阐述分布式内存到共享内存模式行编程的区别和实现(例子代码)?◼ 请使用 MPI 和 OpenMP 分别实现 N 个处理器对 M 个变量的求和?◼ 请说明 SIMD 指令在循环中使用的权限?向量化优化有哪些手段?◼ 请用 Amdahl 定律说明什么是并行效率以及并行算法的扩展性?并说明扩展性的性能指标和限制因素,最后请...
2019-10-18 14:40:03 396 2
转载 如何实现两金额数据相加(最多小数点两位)
题目:如何实现两金额数据相加(最多小数点两位)?参考答案:其实问题并不难,就是考察候选人对 JavaScript 数据运算上的认知以及考虑问题的缜密程度,有很多坑,可以用在笔试题,如果用在面试,回答过程中还可以随机加入有很多计算机基础的延伸。回到这个问题,由于直接浮点相与加会失精,所以要转整数;(可以插入问遇到过吗?是否可以举个例子?)。转整数是第一个坑,虽然只有两位可以通过乘以1...
2019-10-18 14:37:33 904 1
转载 有一批气象观测站,现需要获取这些站点的观测数据,并存储到 Hive 中。但是气象局只提供了 api 查询,每次只能查询单个观测点。那么如果能够方便快速地获取到所有的观测点的数据?
题目:有一批气象观测站,现需要获取这些站点的观测数据,并存储到 Hive 中。但是气象局只提供了 api 查询,每次只能查询单个观测点。那么如果能够方便快速地获取到所有的观测点的数据?参考答案:A. 通过 shell 或 python 等调用 api,结果先暂存本地,最后将本地文件上传到 Hive 中。B. 通过 datax 的 httpReader 和 hdfsWriter 插件,从...
2019-10-18 14:33:48 561 1
转载 现有一批邮件需要发送给订阅顾客,且有一个集群(集群的节点数不定,会动态扩容缩容)来负责具体的邮件发送任务,如何让系统尽快地完成发送?
题目:现有一批邮件需要发送给订阅顾客,且有一个集群(集群的节点数不定,会动态扩容缩容)来负责具体的邮件发送任务,如何让系统尽快地完成发送?请详述技术方案!参考答案:A. 借助消息中间件,通过发布者订阅者模式来进行任务分配B. master-slave 部署,由 master 来分配任务C. 不借助任何中间件,且所有节点均等。通过数据库的 update-returning,从而实现节...
2019-10-18 14:25:00 480
转载 请解释下为什么鹿晗发布恋情的时候,微博系统会崩溃,如何解决?
题目:请解释下为什么鹿晗发布恋情的时候,微博系统会崩溃,如何解决?参考答案:A. 获取微博通过 pull 方式还是 push 方式B. 发布微博的频率要远小于阅读微博C. 流量明星的发微博,和普通博主要区分对待,比如在 sharding的时候,也要考虑这个因素...
2019-10-18 14:23:28 614 1
转载 输入 ping IP 后敲回车,发包前会发生什么?
题目:输入 ping IP 后敲回车,发包前会发生什么?参考答案:ping目标ip时,先查路由表,确定出接口如果落在直连接口子网内,此时若为以太网等多路访问网络则先查询arp缓存,命中则直接发出,否则在该接口上发arp询问目标ip的mac地址,取得后发出,若为ppp等点对点网络,则直接可以发出; 如果查表落在缺省路由上,此时若为以太网等多路访问网络则先查询网关arp缓存,...
2019-10-18 14:20:05 847 2
原创 NAS(Network Attached Storage)协议
网络附加存储(Network Attached Storage,NAS):先来看一道面试题:NFS 和 SMB 是最常见的两种 NAS(Network Attached Storage)协议,当把一个文件系统同时通过 NFS 和 SMB 协议共享给多个主机访问时,以下哪些说法是错误的:(多选)A. 不可能有这样的操作,即把一个文件系统同时通过 NFS 和 SMB协议共享给多个主机访问。...
2019-10-18 14:16:14 8930 1
原创 MySQL的数据如何恢复到任意时间点?
恢复到任意时间点以定时的做全量备份,以及备份增量的 binlog 日志为前提。恢复到任意时间点首先将全量备份恢复之后,再此基础上回放增加的 binlog 直至指定的时间点。目录redo log redo log 是啥 log 何时产生 & 释放? 如何写? 相关配置 其他binlog 记录了什么 何时产生 & 释放 区别数据更新事务流...
2019-10-18 11:58:50 3600 1
原创 从 innodb 的索引结构分析,为什么索引的 key 长度不能太长?
key 太长会导致一个页当中能够存放的 key 的数目变少,间接导致索引树的页数目变多,索引层次增加,从而影响整体查询变更的效率。一、myisam存储引擎1 . 测试的表结构信息mysql> show create table tb2Table: tb2Create Table: CREATE TABLE `tb2` (`a1` varchar(255) DEFAULT ...
2019-10-18 11:49:28 1173 2
原创 关于epoll和select的区别
问题:关于 epoll 和 select 的区别,哪些说法是正确的?(多选)A. epoll 和 select 都是 I/O 多路复用的技术,都可以实现同时监听多个 I/O 事件的状态。B. epoll 相比 select 效率更高,主要是基于其操作系统支持的I/O事件通知机制,而 select 是基于轮询机制。C. epoll 支持水平触发和边沿触发两种模式。D. select ...
2019-10-18 10:04:31 5471 4
原创 缓存算法(页面置换算法)总结
首先解释一下,缓存算法和内存页面置换算法(Page Replacement Algorithm)的核心思想是一样的,都是给定一个有限的空间,设计一个算法来更新和访问里面的数据,所以把它们放在一起讨论总结。下面提到缓存算法的同时,也指代页面置换算法。常见的缓存算法有 FIFO、Least Recently Used (LRU)、Least Frequently Used (LFU)。FIFO...
2019-10-17 17:58:13 1228 2
转载 csdn 新排名系统参考的部分指标
新排名系统参考的部分指标:博文特征博文的原创性/翻译博文的消费数据,包含文章的点赞、收藏、阅读时长、UV……博文的互动指数博主特征博主与粉丝的互动指数(下载CSDN APP可以粉丝进行私信交流)博主所获得的勋章数博主在整个CSDN的活跃指数除了以上数据,以下的数据变化,也会对排名造成影响:发布违规文章,被审核不通过;博客超过一个月没...
2019-10-17 16:50:48 131 1
原创 LRU 缓存机制 设计和实现一个 LRU(最近最少使用)缓存数据结构
题目:LRU 缓存机制 设计和实现一个 LRU(最近最少使用)缓存数据结构,使它应该支持一下操作:get 和 put。 get(key) - 如果 key 存在于缓存中,则获取 key 的 value(总是正数),否则返回 -1。 put(key,value) - 如果 key 不存在,请设置或插入 value。当缓存达到其容量时,它应该在插入新项目之前使最近最少使用的项目作废。参考答案:...
2019-10-17 16:32:02 5777 1
原创 给定一个二叉搜索树(BST),找到树中第 K 小的节点
题目:给定一个二叉搜索树(BST),找到树中第 K 小的节点。* 考察点基础数据结构的理解和编码能力 递归使用* 示例 5 / \ 3 6 / \ 2 4 / 1 说明:保证输入的 K 满足 1<=K<=(节点数目)树相关的题目,第一眼就想到递归求解,左右子树分别遍历。联想到二叉搜索树的性质,r...
2019-10-17 16:18:31 1534 1
原创 已知sqrt(2)约等于1.414,要求不用数学库,求sqrt(2)精确
题目:已知 sqrt (2)约等于 1.414,要求不用数学库,求 sqrt (2)精确到小数点后 10 位。考察点基础算法的灵活应用能力(二分法学过数据结构的同学都知道,但不一定往这个方向考虑;如果学过数值计算的同学,应该还要能想到牛顿迭代法并解释清楚) 退出条件设计二分法1. 已知 sqrt(2)约等于 1.414,那么就可以在(1.4, 1.5)区间做二分查找,如:...
2019-10-17 15:11:54 883 1
原创 问题:如何实现一个高效的单向链表逆序输出?
需要考虑因素,高效应权衡多方面因素数据量是否会很大 空间是否有限制 原始链表的结构是否可以更改 时间复杂度是否有限制 一个链表节点需要输出的元素有多个,例如链表中存的是自定义对象,有多个字段1. 直接递归(简单,但O(n)空间复杂度不支持大数据量)// 直接递归实现核心代码片段public void reverse(head){ // 递归终止条件 if(head.nex...
2019-10-17 14:31:55 382 1
原创 随机数对签名的重要性与伪签名的构造
关于签名算法的一些基本变量定义:G为椭圆曲线 随机值k,R=kG m,待签名消息哈希值 私钥x,公钥P=xG H(),哈希函数 r = R.x,表示r为R的x坐标值Schnorr签名:(R, s) 生成签名:s = k + H(R||P||m)*x 验证签名:sG = R + H(R||P||m)PECDSA签名:(r, s) 生成签名:s = m/k + r/k*...
2019-10-12 14:08:09 1623 2
原创 Schnorr签名介绍
Schnorr签名算法是由德国数学家、密码学家Claus Schnorr提出。并于1990年申请了专利,U.S. Patent 4,995,082,该专利与2008年2月失效。目前该算法可以自由使用。Schnorr签名算法几乎在各个层面均优于比特币现有的签名算法ECDSA:性能,安全,体积,扩展性等方面。Schnorr Sig可以与ECDSA使用同一个椭圆曲线:secp256k1 curv...
2019-10-12 10:28:54 4959 2
原创 How to do Zero-Knowledge from Discrete-Logs in under 7kB
We recently had our annual conference for the Academic Centres of Excellence in the UK and I am proud that Jonathan Bootle from UCL won the PhD student elevator pitch competition. I’ll now hand over t...
2019-10-10 15:21:45 339 3
原创 Building on Bulletproofs
PrefaceIn this post, I will explain how the Bulletproofs zero knowledge proof protocol works, as well as talk about the confidential asset protocol and confidential smart contract language we are bu...
2019-10-10 10:42:45 435 4
原创 区块链替代签名方案优劣势对比,Schnorr签名最适合比特
区块链替代签名方案优劣势对比,Schnorr签名最适合比特币加密货币本身并不支持多重签名。其中m-of-n的签名者需授权一笔交易。我们不需要审判,因为也许我们只设计了一把私钥[0]。但这不是我们想要生活的世界,因为谁都不想因为错误的智能合约或丢失的私匙,而损失数百万美元。今天,我们将研究各种适用于UTXO和帐户模型的交易签名多重签名方案。请注意,一些方案仍在被积极研究当中,并且会有多种具有...
2019-10-09 11:28:26 11764 3
原创 共识算法:raft和pbft算法
区块链技术中,共识算法是其中核心的一个组成部分。首先我们来思考一个问题:什么是共识?对于现实世界,共识就是一群人对一件或者多件事情达成一致的看法或者协议。那么在计算机世界当中,共识是什么呢?我的理解包含两个层面,第一个层面是点的层面,即多个节点对某个数据达成一致共识。第二个层面是线的层面,即多个节点对多个数据的顺序达成一致共识。这里的节点可以是任意的计算机设备,比如 pc电脑,笔记本,手...
2019-10-09 11:14:36 14629 4
VC界面开发资源包
2014-01-04
MFC_雪花漫天飞舞的唯美场景
2014-01-04
可换肤的无损wav格式音乐播放器源码v1.0.3.5
2014-01-04
MFC写的一款游戏——空中大战(SpaceWar)
2014-01-04
Cocos2D-X游戏开发技术精解
2014-01-04
高仿QQ电脑管家8界面(源代码)
2014-01-04
程序员编程艺术第一~三十七章集锦by_July
2014-01-04
IOS环境搭建与开发入门(图文)
2014-01-04
Android多点触控技术实战,对图片进行缩放和移动Demo
2014-01-03
Android滑动菜单框架Demo修正版
2014-01-03
开源项目SlidingMenu示例
2014-01-03
GitHub开源项目SlidingMenu类库
2014-01-03
Android应用开发入门教程(经典版)
2014-01-03
Android照片墙应用实现Demo
2014-01-03
Android瀑布流照片墙实现,体验不规则排列的美感Demo
2014-01-03
Android教你如何一分钟实现下拉刷新功能demo
2014-01-03
26个经典的Android例子代码
2014-01-03
Android实现ListView的A-Z字母排序和过滤搜索功能
2014-01-03
Android专用驱动
2014-01-03
Android双向滑动菜单完全解析,教你如何一分钟实现双向滑动特效demo
2014-01-03
Android开发精要(完整扫描版)
2014-01-03
用区块链技术保障物联网安全
2020-12-05
区块链学习资料.zip
2019-09-16
Google Android SDK开发范例大全(第3版)
2014-01-24
读懂C++递归程序
2014-01-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人