自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

两鬓已不能斑白的专栏

临渊羡鱼,不如退而结网

  • 博客(463)
  • 资源 (4)
  • 收藏
  • 关注

原创 面试题13.在O(1)时间删除链表节点

题目描述:给定单链表的头指针和一个结点指针,实现在O(1)的时间复杂度内,删除该结点。结点的定义为:class Node { Node next; int val; Node(int val) { this.val = val; }}思路:假设当前的链表是:0 -> 1 -> 2 -> 3 -> 4 -> 5 -> 6,我们要删除4这个结点通常的想法是

2017-09-05 15:12:21 619

原创 面试题12. 打印1到最大的n位数

题目描述:输入数字n,按顺序打印从1到最大的n位十进制数,比如输入3,打印出1、2、3 … 999。思路1,用加法:如果n很小,那么完全可以用(长)整型来实现。public static void print(int n) { int num = 1; while(n-- > 0) { num *= 10; } for(int i = 1; i < n

2017-09-05 14:35:01 568

原创 面试题7. 用两个栈实现队列

题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路:假设有两个栈stack1,stack2。stack1存储负责入栈的数据,stack2负责存储出栈的数据。入队列时,向stack1压入数据出队列时,如果stack2为空,就把stack1中的数据导入到stack2中,然后stack2执行出栈操作以后再有入栈的数据,依旧压入到stack1中impo

2017-09-05 10:54:45 518

原创 面试题6. 重建二叉树

题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:二叉树的先序遍历中,第一个数字是根节点的值。通过根节点的值,能够将中序遍历划分为左子树和右子树两个部分。然后递归左子树和右子树。java代

2017-09-05 09:48:12 543

转载 DDA算法和Bresenham算法

DDA算法和Bresenham算法本文结构如下:1、DDA算法2、Bresenham算法3、代码实现核心部分1、DDA算法DDA算法是计算机图形学中最简单的绘制直线算法。其主要思想是由直线公式y = kx + b推导出来的。 我们已知直线段两个端点P0(x0,y0)和P1(x1,y1),就能求出 k 和 b 。在k,b均求出的条件下,只要知道一个x值,我们就能计算出一个y值。如果x的步进为

2017-09-04 10:54:02 60415 5

原创 Leetcode 98. Validate Binary Search Tree

Leetcode 98. Validate Binary Search Tree Given a binary tree, determine if it is a valid binary search tree (BST).Assume a BST is defined as follows:The left subtree of a node contains only no

2017-09-04 09:16:14 632

原创 OpenCV自学笔记27. Hough变换:检测直线和圆

Hough变换:检测直线和圆 前言:Hough变换是一种在图像中寻找直线和圆的方法。我在实际的项目中,使用到了Hough变换检测圆,效果不错,所以写一篇文章,学习Hough变换的原理,并阅读Hough变换的源码,看看OpenCV是如何实现Hough变换的。Hough变换比较难理解,尤其是圆变换的部分,另外我写的也未必清楚,所以记录下来仅做学习、参考之用。本文的结构如下:1、Hough变换如

2017-09-03 21:51:05 7876 1

原创 排序的时间复杂度(记忆帖)

排序的时间复杂度(记忆帖) 怕记不住稳定的排序 时间复杂度 空间复杂度 冒泡排序 平均O(n2),最好O(n) 1 插入排序 平均O(n2),最好O(n) 1 归并排序 O(nlogn) O(n) 桶排序 O(n) O(k)不稳定的排序 时间复杂度 空间复杂度 选择排序 O(n2) 1 希尔排序 O(

2017-09-02 14:34:19 2988 1

原创 Java 访问权限(记忆帖)

Java 访问权限(记忆帖) 怕记不住, 本类内部 同一个包的类 子类 不同包的非子类 public √ √ √ √ protected √ √ √ default √ √ private √ 附:有关接口的权限1、接口中的方法默认是 public abstract接口需要被其他类实现

2017-09-02 14:17:09 319

原创 面试题27. 二叉搜索树与双向链表

面试题27. 二叉搜索树与双向链表 题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。思路:由于是BST树,我们可以中序遍历树中的节点,这样的到的结果才能是排好序的。在中序遍历的过程中,把左子树和右子树作为一个整体分别处理。左子树转为双向链表的结果是【4、6、8】,这个链表的结尾是8,把8和10连在一起。然后转

2017-09-02 13:21:55 387

原创 二叉树的先序、中序、后序遍历(递归 and 非递归)

二叉树的先序、中序、后序遍历(递归 and 非递归)递归好写,非递归需要用栈就难写了。。package lianjia;import java.util.*;public class Main{ // 先序遍历(递归) public static void preOrder(TreeNode root) { if(root != null) {

2017-09-01 22:35:33 410

原创 用单链表实现快速排序

用单链表实现快速排序 前言:快速排序我们都知道,通过一个基准数字,一趟排序就将数据划分为两个部分:左边的部分小于这个基准数字,右边的部分大于等于这个基准数字。我们知道,实现快速排序的关键在于随机访问数据元素,所以,以往的快排都是基于数组实现的。但是在面试中,经常会遇到面试官要求我们用链表实现快排,那么,如何通过链表实现快排呢?我们设置两个指针 i,j,其中 i 初始时指向数组的第一个元素,j

2017-09-01 20:42:42 19388 7

转载 List、Set、Map判断两个对象相等的标准

转自:http://blog.csdn.net/totally123/article/details/521621821、List 通过equals()方法比较返回true即可。2、HashSet 先比较两个对象hashCode()方法返回的值是否相等,如果不相等就认为两个对象是不相等的,如果两个对象的hashCode相等就继续调用equals()方法进一步判断两个对象是否相等,如果equa

2017-09-01 15:56:56 837

原创 Leetcode 53. Maximum Subarray

Leetcode 53. Maximum Subarray Find the contiguous subarray within an array (containing at least one number) which has the largest sum.For example, given the array [-2,1,-3,4,-1,2,1,-5,4],the

2017-09-01 13:38:32 532

原创 Leetcode 560. Subarray Sum Equals K

Subarray Sum Equals K Given an array of integers and an integer k, you need to find the total number of continuous subarrays whose sum equals to k.Example 1:Input:nums = [1,1,1], k = 2Output:

2017-09-01 13:02:21 337

原创 Leetcode 523.Continuous Subarray Sum

Leetcode 523.Continuous Subarray Sum Given a list of non-negative numbers and a target integer k, write a function to check if the array has a continuous subarray of size at least 2 that sums

2017-09-01 10:26:56 597

原创 网易笔试:统计回文

统计回文 题目描述 “回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串,生日的时候她得到两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。你接受花花的请求,帮助她寻找有多少种插入办法可以使新串是一个回文串。如果字符串B插入的位置不同就考虑为不一样的办法。

2017-08-31 16:54:31 640

原创 京东笔试:幸运数

京东笔试:幸运数 题目描述 小明同学学习了不同的进制之后,拿起了一些数字做起了游戏。小明同学知道,在日常生活中我们最常用的是十进制数,而在计算机中,二进制数也很常用。现在对于一个数字x,小明同学定义出了两个函数f(x)和g(x)。 f(x)表示把x这个数用十进制写出后各个数位上的数字之和。如f(123)=1+2+3=6。 g(x)表示把x这个数用二进制写出后各个数位上的数字之和。如12

2017-08-30 19:35:57 478

原创 华为笔试:简单密码

华为笔试:简单密码 题目描述 密码是我们生活中非常重要的东东,我们的那么一点不能说的秘密就全靠它了。哇哈哈. 接下来渊子要在密码之上再加一套密码,虽然简单但也安全。 假设渊子原来一个BBS上的密码为zvbo9441987,为了方便记忆,他通过一种算法把这个密码变换成YUANzhi1987,这个密码是他的名字和出生年份,怎么忘都忘不了,而且可以明目张胆地放在显眼的地方而不被别人

2017-08-30 12:53:37 892

原创 Leetcode 67. Add Binary

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 Str

2017-08-30 10:34:37 328

原创 Leetcode 415. Add Strings

Leetcode 415. Add Strings Given two non-negative integers num1 and num2 represented as string, return the sum of num1 and num2.Note: The length of both num1 and num2 is < 5100.Both num1 an

2017-08-30 10:19:51 597

原创 Leetcode 653. Two Sum IV - Input is a BST

Leetcode 653. Two Sum IV - Input is a BST—————————————– Given a Binary Search Tree and a target number, return true if there exist two elements in the BST such that their sum is equal to the g

2017-08-30 09:38:05 1915

原创 《剑指Offer》代码笔记目录

《剑指Offer》代码笔记目录第01-10题面试题3 二维数组中的查找面试题4 替换空格面试题5 从尾到头打印链表面试题6 重建二叉树面试题7 用两个栈实现队列面试题8 旋转数组的最小数字面试题9 斐波那契数列面试题10 二进制中 1 的个数第11-20题面试题11 数值的整数次方面试题12 打印 1 到最大的 n 位整数面试题13 在 o(1) 时间删除链表结点面试题14 调整数组顺序使奇数位于偶

2017-08-29 14:16:42 947

原创 面试题5. 从尾到头打印链表

面试题5. 从尾到头打印链表 题目描述 输入一个链表,从尾到头打印链表每个节点的值。思路1:借用一个辅助栈Stack,从头扫描链表,并把链表的值存到栈中。由于栈是后进先出,所以执行出栈操作时,链表尾部的节点先被出栈。/*** public class ListNode {* int val;* ListNode next = null;**

2017-08-29 14:01:10 328

转载 转载:TCP为什么要三次握手而结束要四次

转载:TCP为什么要三次握手而结束要四次转自:http://blog.csdn.net/scythe666/article/details/519260421、连接为什么3次握手举个打电话的例子:  A : 你好我是A,你听得到我在说话吗  B : 听到了,我是B,你听到我在说话吗  A : 嗯,听到了  建立连接,开始聊天!三次握手的过程如下所示:简单而言:如果不是三次握手的话,那么到底需要几次握

2017-08-29 10:40:06 1240 2

原创 华为笔试:进制转换

华为笔试:进制转换 题目大意: 写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串。(多组同时输入 ) 输入描述: 输入一个十六进制的数值字符串。 输出描述: 输出该数值的十进制字符串。 输入例子1: 0xA 输出例子1: 10思路:考察位运算,按位转换即可import java.util.*;publ

2017-08-28 21:08:46 552

原创 华为笔试:最高分是多少(2016)

华为笔试:最高分是多少(2016) 题目描述 老师想知道从某某同学当中,分数最高的是多少,现在请你编程模拟老师的询问。当然,老师有时候需要更新某位同学的成绩. 输入描述: 输入包括多组测试数据。 每组输入第一行是两个正整数N和M(0 < N <= 30000,0 < M < 5000),分别代表学生的数目和操作的数目。 学生ID编号从1编到N。 第二

2017-08-28 20:16:45 2455

原创 Java - IP地址转为10进制数

Java - IP地址转为10进制数以192.168.1.2为例,把它转为10进制数的公式是:192 * 256^3 + 168 * 256^2 +1 * 256 + 2 * 1 = 3232235778相当于将IP地址看成256进制的数。由于乘法计算不如位运算快,因此对这个方法做如下改进:a = 192 << 24 b = 168 << 16 c = 1 << 8 d = 2 << 0 最

2017-08-28 19:31:31 5578 4

原创 LeetCode 235. Lowest Common Ancestor of a Binary Search Tree

Lowest Common Ancestor of a Binary Search Tree Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BST.According to the definition of LCA on Wikip

2017-08-28 16:51:35 625

原创 LeetCode 236. Lowest Common Ancestor of a Binary Tree

LeetCode 236. Lowest Common Ancestor of a Binary Tree Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.According to the definition of LCA on Wikipedia:

2017-08-28 16:43:59 1177

原创 1、Two Sum

Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use the same ele

2017-08-28 15:14:32 1277

原创 链家面经:一面跪

链家面经:一面跪远程关于远程笔试,只记得两道题,详见: http://blog.csdn.net/u010429424/article/details/77449966现场笔试 && 一面首先进行一个小时的笔试。一面的主要内容就是讨论笔试题,然后聊了一些简历上的东西。面试官人很和蔼,沟通起来不累。笔试题如下:1、有一个数组包含1000w个整数,给定一个整数n,在数组中找到所有ai和bi,使得ai+

2017-08-28 13:06:35 3044

原创 java写一个堆排序(大顶堆)

java写一个堆排序(大顶堆) 堆排序的时间复杂度,最好,最差,平均都是O(nlogn),空间复杂度O(1),是不稳定的排序堆(或二叉堆),类似于完全二叉树,除叶子节点外,每个节点均拥有左子树和右子树,同时左子树和右子树也是堆。 小顶堆:父节点的值 <= 左右孩子节点的值 大顶堆:父节点的值 >= 左右孩子节点的值堆的存储: 用一个数组存储堆就可以了,如【19, 17, 20, 18,

2017-08-28 12:22:13 3293 1

原创 HashMap和Hashtable的遍历

HashMap和Hashtable的遍历 HashMap Hashtable keySet() keySet() entrySet() entrySet() value() elements() iterator iterator 此外,Hashtable还可以使用keys() 和Enumeration进行遍历,闲言少叙,直接上代码import java.u

2017-08-25 09:58:34 2186

转载 Java常量池的大概理解

转载自:http://www.cnblogs.com/iyangyuan/p/4631696.html 触摸java常量池     Java常量池是一个经久不衰的话题,也是面试官的最爱,题目花样百出,小菜早就对常量池有所耳闻,这次好好总结一下。 理论          小菜先拙劣的表达一下jvm虚拟内存分布:      程序计数器是jvm执行程序的流水线,存放一些跳转指令,这个太高深,小菜不

2017-08-25 08:59:58 564

原创 猪八戒笔试:数串

猪八戒笔试:数串 题目描述 设有n个正整数,将他们连接成一排,组成一个最大的多位整数。 如:n=3时,3个整数13,312,343,连成的最大整数为34331213。 如:n=4时,4个整数7,13,4,246连接成的最大整数为7424613。 输入描述: 有多组测试样例,每组测试样例包含两行,第一行为一个整数N(N<=100),第二行包含N个数(每个数不超过1

2017-08-22 19:42:42 1308

原创 藏宝图

题目描述 牛牛拿到了一个藏宝图,顺着藏宝图的指示,牛牛发现了一个藏宝盒,藏宝盒上有一个机关,机关每次会显示两个字符串 s 和 t,根据古老的传说,牛牛需要每次都回答 t 是否是 s 的子序列。注意,子序列不要求在原字符串中是连续的,例如串 abc,它的子序列就有 {空串, a, b, c, ab, ac, bc, abc} 8 种。 输入描述: 每个输入包含一个测试用例。每个测

2017-08-22 18:42:52 323

原创 阿里笔试:输出字符串中的出现最多的数字的和

阿里笔试:输出字符串中的出现最多的数字的和(无判题系统) 题目描述 写段代码,定义一个字符串常量,字符串中只有大小写字母和整数,输出字符串中的出现最多的数字的和?例如 “9fil3dj11P0jAsf11j “,中出现最多的是11两次,输出22.思路:参考大神思路 按非数字分割,”9fil3dj11P0jAsf11j”被分割成”【9、3、11、0、11】”,然后统计数字出现的次数i

2017-08-22 09:17:02 1197 1

原创 搜狐笔试:保留最大的数

搜狐笔试:保留最大的数(只能过50%的测试用例) 题目描述 给定一个十进制的正整数number,选择从里面去掉一部分数字,希望保留下来的数字组成的正整数最大。 输入描述: 输入为两行内容,第一行是正整数number,1 ≤ length(number) ≤ 1000。第二行是希望去掉的数字数量cnt 1 ≤ cnt < length(number)。 输出描述:

2017-08-21 22:14:21 1436

原创 阿里笔试示例:小猴子摘桃

阿里笔试示例:小猴子摘桃 题目描述: 小猴子下山,沿着下山的路有一排桃树,每棵树都结了一些桃子。小猴子想摘桃子,但是有一些条件需要遵守,小猴子只能沿着下山的方向走,不能回头,每颗树最多摘一个,而且一旦摘了一棵树的桃子,就不能再摘比这棵树结的桃子少的树上的桃子。那么小猴子最多能摘到几颗桃子呢? 举例说明,比如有5棵树,分别结了10,4,5,12,8颗桃子,那么小猴子最多能摘3颗桃子

2017-08-21 19:44:30 1660

vgg16_weights_th_dim_ordering_th_kernels_notop.h5

vgg16 cnn theano

2017-08-05

vgg16_weights_tf_dim_ordering_tf_kernels_notop.h5

vgg16 卷积神经网络

2017-08-05

《机器学习实战》一书的源代码

《机器学习实战》一书的源代码,用python写的

2015-09-24

python写的列主元Gauss消去法

Gauss消去法可以有效计算线性方程组。针对《数值分析》中的列主元Gauss消去算法,编写的python程序。在这个程序中,可以计算出线性方程组的一个x解,并能逐步打印出线性方程组的每一步变换。注意:运行此程序需要了解基本的线性代数知识。tar.gz是我在Ubuntu下的压缩包,请自行解压,如有问题或意见,欢迎反馈,谢谢!

2015-09-23

空空如也

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

TA关注的人

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