11 2020 档案
摘要:题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1
阅读全文
摘要:题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 示例 输入 [1,2,3,2,2,2,5,4,2] 返回值 2 知识点回顾 暴
阅读全文
摘要:题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向 知识点 递归 比如将二元查找树 10 / \ 6 14 / \ / \ 4 8 12 16转换成双向链表4=6=8=10=12=14=16。 1.二叉树中序遍历的结果与链表的顺
阅读全文
摘要:题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长
阅读全文
摘要:题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 示例 输入 {1,3,5},{2,4,6} 返回值 {1,2,3,4,5,6} 知识点回顾 排序链表合并 代码 #递归法# -*- coding:utf-8 -*- # class ListNod
阅读全文
摘要:题目描述 输入一个链表,反转链表后,输出新链表的表头。 示例 输入 {1,2,3} 返回值 {3,2,1} 知识点回顾 链表反转:递归法;迭代法 代码 #用递归的方式# -*- coding:utf-8 -*- # class ListNode: # def __init__(self, x): #
阅读全文
摘要:题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 保证base和exponent不同时为0 示例 输入 2,3 返回值 8.00000 知识点回顾 pow(x, y)=x^y 代码 # -*- coding:utf-8 -*-
阅读全文
摘要:题目描述 输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。 示例 输入 10 返回值 2 知识点回顾 与操作:给定一个数n,每进行一次n&(n-1)计算,其结果中都会少了一位1,而且是最后一位 代码 # -*- coding:utf-8 -*- class Solution:
阅读全文
摘要:题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 比如n=3时,2*3的矩形块有3种覆盖方法: 示例 输入 4 返回值 5 知识点回顾 递归 这题就是青蛙跳,“一只青蛙一次可以跳上1级台阶,也可以跳上2级”,等
阅读全文
摘要:题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 示例 输入1 返回值1 输入4 返回值5 知识点 跳台阶问题(递归) 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 初始值很
阅读全文
摘要:题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。 n<=39 示例 输入 4 返回值 3 知识点回顾 数组:这里用递归会报错“您的程序未能在规定时间内运行结束,请检查是否循环有错或算法复杂度过大” 改用数组可以巧妙解决 代码
阅读全文
摘要:题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 示例1 输入: [1,2,3,4,5,6,7],[3
阅读全文
摘要:题目描述 给定一棵二叉搜索树,请找出其中的第k小的结点。 示例1: 输入: {5,3,7,2,4,6,8},3 返回值:{4} 说明: 按结点数值大小顺序第三小结点的值为4 知识点 1)二叉搜索树的中序遍历,找第k个 代码 # -*- coding:utf-8 -*- # class TreeNod
阅读全文
摘要:原帖地址: 漫谈数据仓库之拉链表(原理、设计以及在Hive中的实现) 什么是拉链表 拉链表是针对数据仓库设计中表存储数据的方式而定义的,顾名思义,所谓拉链,就是记录历史,存储的是事物最基本信息以及每条记录的生命周期。记录一个事物从开始,一直到当前状态的所有变化的信息。 等价于缓慢变化维的类型2:增加
阅读全文
摘要:为什么要设计数据分层 ——参考《一种通用的数据仓库分层方法》 这是数据仓库同学在设计数据分层时首先要被挑战的问题,类似的问题可能会有很多,比如说“为什么要做数据仓库?”、“为什么要做元数据管理?”、“为什么要做数据质量管理?”。当然,这里我们只聊一下为什么要做设计数据分层。 作为一名数据的规划者,我
阅读全文
摘要:题目描述 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。(注意:规定B[0] = A[1] * A[2] * ... * A[n-1],B[n-
阅读全文
摘要:题目描述 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。 知识点 1)异或就是不带进位的加法 2)计算进位:通过与结果左移一位, 3)不能是负数: 4)关于0xFFFF low16 = (unsigned short ) (number>>16); high16 =
阅读全文
摘要:1.定义: 维度表包含与业务过程度量事件有关的文本环境,即事件的5W1H:When,Where,Who, What,Why,How tips:避免在维度属性中使用空值(但这里注意空值NULL不关联,但空串字符会关联);事实表不同,事实表的度量可以为空,但外键不能存在空值,否则违背了参照完整性。 2.
阅读全文
摘要:题目描述 输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度 知识点 递归 代码 # -*- coding:utf-8 -*- # class TreeNode: # def __init__(self, x): # self.va
阅读全文
摘要:题目描述 操作给定的二叉树,将其变换为源二叉树的镜像。 输入描述 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 5 知识点 二叉树 递归 python is None 和 ==None self参数
阅读全文

浙公网安备 33010602011771号