- 博客(66)
- 收藏
- 关注
原创 剑指Offer:面试题8——旋转数组的最小值(java实现)
题目描述: 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入 一个递增排序的数组的一个旋转输出 旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 思路: 1.直接遍历一次数组,即可得出最小值。时间复杂度O(n) 2.由于原数组是
2016-07-06 09:52:56 941
原创 剑指Offer:面试题7——用两个栈实现队列(java实现)
题目描述:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。首先定义两个栈Stack<Integer> stack1 = new Stack<Integer>();//作为进队的端口Stack<Integer> stack2 = new Stack<Integer>();//作为出对的端口思路:两个栈,有两个端口,那么肯定一个是用来入队的,另一个用来出队的。同时,
2016-07-05 13:31:59 3028
原创 剑指Offer:面试题6——重建二叉树(java实现)
问题描述:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不包含重复的数字。例如:输入:前序{1,2,4,7,3,5,6,8},中序{4,7,2,1,5,3,8}输出:相应的树根结点思路1:递归。前序遍历:根(左子树)(右子树) 中序遍历:(左子树)根(右子树)先从前序遍历剥出 根结点 然后从中序遍历中剥出:左子树和右子树,递归建立子树,并与根结
2016-07-05 12:40:37 580
原创 剑指Offer:面试题5——从尾到头打印链表(java实现)
问题描述:输入一个链表的头结点,从尾巴到头反过来打印出每个结点的值。首先定义链表结点public class ListNode { int val; ListNode next = null; ListNode(int val){ this.val = val; } }思路1:此题明显想到是利用栈的思想,
2016-07-05 12:07:55 724
原创 剑指Offer:面试题4——替换空格(java实现)
问题描述:请实现一个函数,把字符串中的每个空格替换成”%20“。例如: 输入:“We are happy.” 输出:”We%20are%20happy.”思路:按顺序找出空格所在的位置(下标),然后利用字串相加,将去除空格的字串用“%20”连接起来/** * 面试题4:替换空格 * @param str * @return */ public st
2016-07-05 10:47:23 583
原创 剑指Offer:面试题3——二维数组中的查找(java实现)
问题描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数.思路:取数组中的元素与目标整数比较,相等则返回true,小于则 查找当前元素的右方和下方,大于则查找当前元素的左方和上方,然而这两个区域有重叠部分,就不容易处理。然而如果我们从数组的角落选取元素与目标整数对比,则就不会出现重叠
2016-07-05 10:24:07 944
原创 HIVE配置文件
进入HIVE_HOME/conf 编辑文件hive-site.xml,内容如下:(这是伪分布式模式)主要声明了以下几个内容:数据仓库地址数据库连接地址数据库连接驱动 数据库连接用户名数据库连接密码是否使用本地的数据库 :这里是本地数据库模式<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet t
2016-06-28 21:56:17 3877
原创 C++ 之旅:前言
日前,拿起了C++教材开始学习。在大学二年级的时候,其实C++已经是我们的必修课程。然而,那时的我刚从C语言的噩梦中逃出来,对C++也不甚喜爱。刚接触编程的我当时实在无法理解譬如下面这段int x = 3, y = 5;int temp;temp = x;x = y;y = temp;(这不是所有的变量都相等吗?)后来我只能忽略自己心中的呐喊,接受这个既定的事实。结果x=5,y=3。后来考研
2016-06-14 10:03:01 415
原创 leetcode 349:两个数组的交集I
Problem:Given two arrays, write a function to compute their intersection.中文:已知两个数组,写一个函数来计算它们的交集Example:Given nums1 = [1, 2, 2, 1], nums2 = [2, 2],return [2, 2].已知nums1 = [1, 2, 2, 1], nums2 = [2, 2]
2016-05-26 17:41:57 2718
原创 python学习(三):matplotlib学习
前言:matplotlib是一个python的第三方库,里面的pyplot可以用来作图。下面来学习一下如何使用它的资源。一、使用前首先在python中使用任何第三方库时,都必须先将其引入。即:import matplotlib.pyplot as plt或者:from matplotlib.pyplot import *二、用法1.建立空白图fig = plt.figure()得到如下图的效果:也可
2015-09-29 10:08:36 8488
原创 python学习(二):python基本语法
前言:python基本的语法与其他语言诸如C,JAVA等类似,但个中有些许不同。 一、常规语法1.变量名与关键字与其他语言类似,变量名由字母、数字、下划线组成,且必须由字母开头。 变量使用不需要提前声明。2.常用数据类型 int 整型 float 浮点数 str 字符串 用type(a)来求得变量a的类型 在交互式平台中输入如下语句:a = 3type(a)该语句会输出<type '
2015-09-28 15:58:43 645
原创 python学习(一):环境安装及HelloWorld
一、安装注意事项: 在安装python的第三方库时,(平台是win)要 注意所下载的包的版本,一要与所安装的python版本相对应,同时还有注意操作系统的位数(32位还是64位)。下载好后,先将c:\python27\scripts\pip.exe的路径添加到系统变量path中,然后利用pip安装第三方库。1.用pip安装第三方库的方法pip install 包名(所在路径)第三方库下载地址:ht
2015-09-26 10:21:13 736
原创 Android环境搭建
本文只为记录我的学习过程,为以后使用方便一、安装JAVA 1.下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html 2.安装 3.环境变量配置 分别是: JAVA_HOME: CLASSPATH: PATH:二、安装eclipse 1.下载eclipse: 官网——ht
2015-09-26 10:02:38 374
原创 LeetCode:237
题目:Delete Node in a Linked List(从列表中删除指定结点) 描述:Write a function to delete a node (except the tail) in a singly linked list, given only access to that node. 例子:Supposed the linked list is 1 -> 2 -> 3
2015-07-16 14:58:36 624
原创 数据结构(一)顺序表、链表以及队列
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-07-16 12:32:18 695
原创 聚类结果的评估指标及其JAVA实现
一. 前言又GET了一项技能。在做聚类算法的时候,由于要评估所提出的聚类算法的好坏,于是需要与一些已知的算法对比,或者用一些人工标注的标签来比较,于是用到了聚类结果的评估指标。我了解了以下几项。首先定义几个量:(借鉴该博客:http://blog.csdn.net/luoleicn/article/details/5350378)TP:是指被聚在一类的两个量被正确的分类了(即在
2015-07-15 10:42:05 3885
转载 java.io.Serializable浅析
转自:http://www.cnblogs.com/gw811/archive/2012/10/10/2718331.htmlJava API中java.io.Serializable接口源码:public interface Serializable {}类通过实现java.io.Serializable接口可以启用其序列化功能。未实现次接口的类无法使
2015-07-10 21:07:03 493
转载 JAVA中求解对象所占字节大小
该类为cache4j缓存框架中的工具类方法,该方法实现了两个接口接口1:计算对象在内存中所占字节数接口2:复制对象,实现深度克隆效果,实现原理为先序列化对象,然后在反序列化对象;返回一个新的对象,达到克隆效果 package net.sf.cache4j.impl;import java.io.ByteArrayInputStream;import java.i
2015-07-10 20:59:08 1007
转载 eclipse快捷键大全
http://blog.csdn.net/klaus1983/article/details/12313397Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,
2015-07-03 16:22:30 480
原创 关联规则挖掘之apriori算法
前言:众所周知,关联规则挖掘是数据挖掘中重要的一部分,如著名的啤酒和尿布的问题。今天要学习的是经典的关联规则挖掘算法——Apriori算法一、算法的基本原理由k项频繁集去导出k+1项频繁集。二、算法流程1.扫描事务数据库,找出1项集,并根据最小支持度计数,剪枝得出频繁1项集。k=1.2.由频繁k项集进行连接步操作,形成候选的k+1项集
2015-07-03 15:53:23 928
原创 调用WEKA包进行kmeans聚类(java)
前言:Kmeans是一种非常经典的聚类算法。它利用簇的中心到对象的距离来分配每个对象的簇所属关系。同时迭代的进行簇的中心的更新以及簇分配的更新,直到收敛。下面是调用weka包中实现的kmeans的代码package others;import java.io.File;import weka.clusterers.SimpleKMeans;import weka.
2015-07-03 15:37:48 7693 1
原创 通过weka.jar包来进行数据预处理
前言:注意首先要将weka.jar包加载到相应的路径中去。程序中的数据也是用的weka自带的数据。扩展:eclipse添加jar包的操作方法:打开eclipse ,在对应的工程下右击,选择Build Path ->选择Configure Build Path ->选择Libraries ->点击Add External JARs ->然后到你的jar包所在路径选择它。即可。一、特
2015-07-03 12:48:23 4582 2
原创 JAVA的JDBC连接与sql操作
一、前言本文主要介绍怎样连接数据库。即JDBC的操作。以MySQL为例子。前提是首先要将驱动jar包放入对应路径中。二、过程说明1.加载jdbc驱动程序Class.forName("com.mysql.jdbc.Driver");这里的驱动根据不同类型的数据库来改变。比如mysql数据库,就是com.mysql.jdbc.DriverOracle数据库,oracle
2015-07-03 12:26:54 659
原创 JAVA集合学习
JAVA中有几种常用的集合类。分别是List,Set,Map等提示:Eclipse中自动导入包的快捷键 Ctrl+Shift+O一、List类父接口:该类是Collection集合接口的子接口。特点:List类是有序的,可以有重复的元素。分类:它也有两个子接口,分别是ArrayList(动态数组)、LinkedList(链表、队列、堆栈)常用方法:1.构造方法
2015-07-03 11:19:48 1197
原创 文件的输出与载入之java操作
一、前言学习java没多久,关键是没怎么系统学过。都是看别人的代码来学习的。今天就把一直以来让我头痛的java IO 的一些基本操作来记录下来,加深记忆。二、java导入文件到内存中首先放一个完整的加载函数(这里我的返回值是定义的一个稀疏矩阵类)public SMatrix Load(String file, String delimeter){//file是要读
2015-07-02 11:57:32 484
原创 稀疏矩阵乘法加法等的java实现
原创声明:本文系作者原创,转载请写明出处。一、前言 前几天由于科研需要,一直在搞矩阵的稀疏表示的乘法,不过最近虽然把程序写出来了,还是无法处理大规模的矩阵(虽然已经是稀疏了)。原因可能是结果不够稀疏。或者相乘的矩阵本来也不稀疏。 还是把实现的程序放在这里。以供以后研究使用。二、程序实现功能 首先封装稀疏矩阵为三
2015-07-02 11:38:18 4440 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人