自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(206)
  • 资源 (18)
  • 收藏
  • 关注

原创 剑指offer 合并两个链表

题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。思路:非递归:构造第三个链表,先定义一个head,指向两个list1和list1开头比较小的那个链表头部;然后定义一个cur指向head,循环list1和list2,每次把两个链表中小的值放到cur后面,cur向后值移动,对应的list1或者list2向后移动;最后跳出while循环,如

2018-02-04 21:46:23 108

原创 剑指offer 翻转链表

题目描述输入一个链表,反转链表后,输出链表的所有元素。思路:定义两个变量,一个pre指向当前节点的前面一个结点,一个next指向当前节点的后面节点。每次遍历,先把next 指向当前节点的后面一个结点,然后把当前节点的next指针指向pre,再依次把pre节点指向当前节点,把当前节点后移。/*public class ListNode { int val; List

2018-02-04 21:30:59 151

原创 剑指offer 链表中倒数第k个结点

题目描述输入一个链表,输出该链表中倒数第k个结点。思路:快慢指针,让快指针先走k步,然后慢指针开始走,若快指针走到末尾(为null),就是慢指针指向的就是倒数第k个结点/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val

2018-02-03 21:39:36 93

原创 整数中1出现的个数

题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。思路:一个数二进制,好比 ,1100,把这个数减去1, 1011 ,然后把这两个数做与运算, 为1000 ,此时还剩一个1 。然后再减去1 为 0111 ,然后把1000和0111做与运算 ,此时结果为0000..这种解法复杂度相对较低。public class Solution { public in

2018-02-03 21:07:57 672

原创 剑指offer 斐波那契数列

题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n思路:第一反应,当然是用递归,简单简洁。但是栈消耗比较大,当数值很大时,费时费空间。第二反应,动态规划的思路,用循环,保存之前 已经运算的值。public class Solution { public int Fibonacci(int n) { int

2018-02-03 20:46:28 86

原创 剑指offer 旋转数组的最小数字

题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路:采用二分查找,先把中间的值和low和high值对比,如果中间值比high位值大,low指向中

2018-02-03 20:30:21 97

原创 用两个栈实现队列

题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路:第一个栈,功能作为入队列;第二个栈,功能作为出队列,如果为空,把stack1出栈 ,并进栈stack2, 如果不为空,直接出栈。import java.util.Stack;public class Solution { Stack stack1 = new Sta

2018-02-02 22:56:50 96

原创 剑指offer 重建二叉树

题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:前序是根左右,中序是左根右。前序第一个元素是根结点的值。扫描遍历中序,就能确定 根结点的值的位置。根据中序遍历的特点,在根结点的值

2018-02-02 22:43:23 77

原创 剑指offer 从头到尾打印链表

题目描述输入一个链表,从尾到头打印链表每个节点的值。思路:第一反应,便是使用栈,先进后出,先遍历进栈,再遍历栈出栈。第二反应,使用递归,其原理和栈差不多,类似一个进栈的过程。递归:import java.util.ArrayList;public class Solution { ArrayList arrayList = new ArrayList(

2018-02-01 21:24:30 138

原创 剑指offer 替换空格

题目描述请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。思路:1、从前往后遍历字符串空格长度blankNum   2、然后扩展数组长度为字符串长度length+2*blankNum,因为%20占三位3、从后向前遍历,一个index下标指向新的扩展后数组下标,一个i下标指向原来数

2018-02-01 21:12:46 132

原创 剑指offer 二维数组中的查找

题目描述在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路:二维数组,从左到右递增,从上到下递增。选取右上角或者左下角元素,选取右上角元素与target比较,如果target相对较大,则肯定到下面寻找;如果target相对较小,则肯定到左边寻找。package

2018-02-01 20:53:01 124

原创 数组的全排列

1.问题背景学过数学的人都知道,全排列的意思是什么。现在如何用计算机的编程语言实现数组的全排列呢?数组的全排列可用于求解八皇后问题。与此同时,全排列经常会出现在笔试或者面试,如求字符串的全排列。2.全排列的递归实现2.1求解思路全排列表示把集合中元素的所有按照一定的顺序排列起来,使用P(n, n) = n!表示n个元素全排列的个数。P(n, n)

2018-01-31 21:20:00 8923

原创 lintcode -- Strobogrammatic Number 对称数

A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down).Write a function to determine if a number is strobogrammatic. The number is represented as

2018-01-31 20:01:21 232

原创 剑指offer39: 数组中出现次数超过一半的数字

题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。方法一: 先对数组排序,然后取中位数,那个中位数肯定是超过一半的数字。采用快速排序时间复杂度为O(nlogn)+取中位数O(n)。

2018-01-23 22:07:56 159

原创 lintcode82. 落单的数

题目描述: 给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字。样例给出 [1,2,2,1,3,4,3],返回 4思路可以这样设计,既然位运算中“异或”的操作能消去同样的整数,那么,如果我们对整个数组从前到后异或(第一个数异或第二个,得到的结果再异或第三个),这样一来,只要是数组中成对出现的元素,到最后都能相互抵消(与这两个成对的数是否相邻

2018-01-22 21:58:13 205

原创 一、垃圾收集策略

程序计数器、虚拟机栈、本地方法栈都是线程私有的,会随着线程而生,随线程而灭栈中的栈帧随着方法的进入和退出有条不紊的执行着出栈和入栈操作.静态内存分配和回收静态内存分配是指在程序开始运行时由编译器分配的内存,在被编译时就已经能够确定需要的空间,当程序被加载时系统把内存一次性分配给它,这些内存不会在程序执行时发生变化,直到程序执行结束时才回收内存.。包括原生数据类型及对

2018-01-21 22:21:17 139

原创 lintcode508 摆动排序

给你一个没有排序的数组,请将原数组就地重新排列满足如下性质:nums[0] = nums[2] 样例给出数组为 nums = [3, 5, 2, 1, 6, 4] 一种输出方案为 [1, 6, 2, 5, 3, 4]解析:如果按照从1排序,也就是奇数要比相邻的偶数小。偶数要比相邻的奇数大。否则就的交换位置。public class Solution

2018-01-21 21:36:57 278

原创 排序之快速排序

快速排序是一种高效的排序算法,它采用分治法的思想,有“分而治之”的特点。有三个过程:一、分解,把大问题拆解到很小的问题。二、每个小问题都能够有方法解决。三、合并,把小问题各个答案合并package com;//快速排序,默认第一个元素为主元public class Problem1 { /** * @param args */ public stati

2018-01-21 21:09:46 159

原创 Spring afterPropertiesSet方法

在看用redis实现异步消息队列时,遇到了注册Event,其中看到了afterPropertiesSet。然后查博客,记录下。一、简单介绍1、init-method方法,初始化bean的时候执行,可以针对某个具体的bean进行配置。init-method需要在applicationContext.xml配置文档中bean的定义里头写明。例如:这样,当TestBean在初

2018-01-11 21:28:08 61670 4

原创 FCM算法归属于哪一类聚类

老板就FCM的概率,想我提问了如下问题:(1)FCM归属于哪一类聚类?FCM属于基于划分,也属于软聚类(2)软聚类和硬聚类的定义是什么?(这个是在评讲你的小论文时提过的问题)从聚类的结果来看,聚类可分为两大类:软聚类和硬聚类。软聚类是将样本个体通过隶属度标识出与各个类簇的隶属关系。硬聚类是将样本个体划分为某一特定的类簇,与其它的类簇并没有关系。硬聚类是将样本点明确地

2018-01-08 12:16:58 1486

原创 java并发---BlockingQueue

BlockingQueue,阻塞队列,是java.util.concurrent包下的接口,它集成了Queue类。它的实现类有ArrayBlockingQueue,ListBlockingQueue等。注意:ArrayBlockingQueue中使用了lock和condition来控制队列的进出,因此ArrayBlockingQueue是线程安全的。final ReentrantLock

2017-12-03 14:39:19 207

原创 java并发---lock和condition

一、 java.util.concurrent.locks下面接口介绍          java.util.concurrent.locks包为锁和等待条件提供一个框架的接口和类,它不同于内置同步(synchronize)和监视器。该框架允许更灵活地使用lock和condition,但以更难用的语法为代价。 它下面有三个接口:Lock , ReadtrantLock , Conditio

2017-12-03 13:50:46 5083

原创 敏感词过滤算法

这种方法,是从牛客网上看到的。需要实现功能: 如果有字符串为xwabfabcff,敏感词为abc、bf、bc、m,若这个字符串中包含敏感词,则使用***代替敏感词,实现一个算法。查找步骤:算法如下:1.使用三个指针,指针1指向根节点,指针2指向字符串下标起始值,指针3指向字符串当前下标值。指针1为tempnode=rootnode,指针2为begin=0,指针3为p

2017-12-01 21:34:42 717

原创 Tire树

今天写一个项目,遇到敏感词过滤问题。上面提到了先把敏感词存起来,在这里用到了Tire树来存储。 又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。三个性质:

2017-12-01 21:10:47 353

原创 两个数的和

题目:给定一个整数数组和一个整数target,返回2个元素的下标,它们满足相加的和为target。例子: 给 nums = [2,7,11,15] ,target = 9因为nums[0] + nums[1] = 2 +7 =9所以返回 0 ,1package com.nowcoder.wenda.algorithm;import java.util.HashM

2017-11-29 20:59:38 306

原创 链表中环的入口节点

剑指offer 面试题23 : 如果一个链表中包含环,如何找出环的入口节点?第一步: 使用快慢指针,判断链表中是否有环。一个快指针,一个慢指针 。慢指针每次走一步,快指针每次走两步。如果最后有相遇,表示有环,返回相遇节点;如果没有环,则一直遍历到底,返回为null。public static ListNode meetingnode(ListNode head){ if(

2017-11-28 21:17:20 172

原创 从尾到头打印链表

这是剑指offer上面试题6: 题目:输入一个链表的头节点,从尾到头反过来打印出每个节点的值。解法一:通过先顺序遍历链表,依次如栈,栈是先进后出的数据结构。package com.nowcoder.wenda.arithmetic;import java.util.ArrayList;import java.util.Stack;/** * Created by wuy

2017-11-28 19:35:28 109

原创 使用RDD解决spark TopN问题:分组、排序、取TopN

处理大学生云计算技能大赛第一题关联规则推荐中,遇到了这题:用的关联规则推荐算法 FPGowth想把:(2174 84329 114721 149, 150, 0.885480572597137)(858 878 791 4662, 49, 0.8841607565011821)(858 878 791 4662, 122, 0.9385342789598109)(2174

2017-11-23 17:03:30 2609 2

原创 spring和mybatis整合

方式有两种:第一个:是用dao模式的,比较传统第二种:通过mapper代理,mapper代理其实有两种方式。一个是对单个功能,第二个是批处理单个功能: 批处理: 其整合的applicationcontext.xml如下:(包括了dao,和mapper两种)<beans xmlns="http://www.

2017-10-28 20:03:55 156

原创 spring mvc demo案例

spring mvc 介绍开始实践demo,步骤如下:步骤1.前提,创建maven project :参考地址 --》 http://blog.csdn.net/u013013553/article/details/78202361步骤2. 项目目录结构步骤3:pom.xml的编写<project xmlns="http://maven.apac

2017-10-11 12:37:24 659

原创 使用myeclipse构建maven项目(web项目)

前提:MyEclipse已配置Maven,具体步骤见http://blog.csdn.net/haishu_zheng/article/details/51492491创建步骤:步骤1. new 出web project ,并勾选对maven support,注意项目的url 和 webRoot步骤2:填写groupid等信息,package

2017-10-11 12:30:32 505

原创 Spring和MyBatis环境整合

spring简介:Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。两个重要模块:Spring 面向方面编程(AOP)和控制反转 (IOC) 容器。控制反转模式(也称作依赖性介入)的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器 (在 Spring 框架中是 IOC 容器)

2017-10-10 16:31:06 354

原创 java多线程体系图

2017-08-12 00:22:08 1001

原创 注册一个文件系统

/**Copyright(c) 2005-2007 Nanjing jit**Authored by yunlong wu 2015年 05月 20日 星期三 14:08:04 CST** @desc://注册一个文件系统()** @history*/#include #include #include #include #include #include #incl

2017-06-14 10:59:46 398

原创 linux 块设备驱动(1)

功能:添加一个ramdisk这样的设备,并且进行格式化,挂在,读写,很简单的一个块设备例子,刚刚学习设备驱动看完,并且运行完代码,希望大家和我有一样的问题,就是新的设备空间那里来的?原来的硬盘?还是内存,缓存?#include#include#include#include#include#define DEVICE_MAJOR 240#define DEVICE_NA

2017-06-14 10:55:40 363

原创 linux usb设备驱动(1)

/* * USB Skeleton driver - 2.2*功能:探测插入usb设备的次数,主要根据linux内核源码usb_skeleton.c修改,本事例以插入手机为例,因为系统原来已经有了u盘设备的驱动 * * Copyright (C) 2001-2004 Greg Kroah-Hartman (greg@kroah.com) * * This program

2017-06-14 10:49:34 401

原创 网络驱动snull

头文件/* * snull.h -- definitions for the network module * * */#ifndef __SNULL_H__#define __SNULL_H__#define SNULL_RX_INTR 0x0001#define SNULL_TX_INTR 0x0002#define SNULL_TIMEOUT 5 struc

2017-06-14 10:46:33 407

原创 测试一个进程的运行时间

功能:测试一个进程开始结束的运行时间test_thread.c#include "linux/init.h"#include "linux/kernel.h"#include "linux/module.h" //3个头文件包含了内核提供的所有内核模块的头文件#include "linux/sched.h"#include #include "linux/timer.h"

2017-06-14 10:41:13 507

原创 linux 内核定时器打印进程信息

linux内核模块作用: 通过定时器,在超过10秒就打印进程内存排名前十的进程信息test.c#include "linux/init.h"#include "linux/kernel.h"#include "linux/module.h" //3个头文件包含了内核提供的所有内核模块的头文件#include "linux/timer.h"#include "linux/r

2017-06-14 10:35:21 1151

原创 socket(2)

server.c负责接受客户端连接,并且把客户端发送过来的文件接受#include #include #include #include #include #include int main(int argc,char **argv){ int sockfd,bindfd,listenfd,acceptfd,ntopfd,recvfd; sock

2017-06-14 10:27:16 288

LeetCode-in-Go-master.zip

leetcode 答案解析 golang解答

2020-04-27

beego第三方软件包

beego框架,和macaron框架,已经安装好,下载后放在gopath目录下。

2019-07-03

golang的web框架macaron,可直接运行

golang中的macaron框架,已经下载下来了,可以直接解压缩,并运行里面main.go 文件,就可以运行起服务了!!!注意放到自己的GOPATH目录!!!

2019-06-22

build1.zip

编译出来的docker客户端,可以在docker容器内部使用。

2019-06-10

航空售票系统

http://blog.csdn.net/u013013553/article/details/55823526 运行截图。防sql注入等

2017-02-19

vsftpd安装大全

vsftpd 安装大全 ,适合于redhat 系统

2015-05-30

epel-release-6-8.noarch.rpm

epel-release-6-8.noarch.rpm redhat

2015-05-30

ceph安装需要的所有安装包

ceph安装需要的所有安装包,没有网络也一样安装

2015-05-30

arpoison使用

局域网的arp攻击,使用gcc编译,把可执行程序链接到/lib/sbin目录下

2015-04-23

webrtc nodejs 视频聊天

基于浏览器,webrtc进行的语音视频聊天,采用nodejs

2015-01-14

linux语音聊天

基于linux alsa 声卡编程,用c写的代码,能够语音聊天

2015-01-14

freeswitch

freeswitch的安装包,至于安装教程,网上有很多

2015-01-14

java语音聊天

这次实现linux下的语音聊天,用了很久的时间,终于实现了,这是用java 写的,运行时先点击服务端语音按钮,再点击客户端按钮。这代码绝对不是坑人的。

2015-01-14

微薄是这样炼成的pdf

微薄是这样炼成的pdf,里面有NAT穿透,语音视频聊天室的实现

2015-01-14

openfire spark

spark即时通讯,Spark和Openfire能够很好的相互支持.

2015-01-14

openfire .tar

openfire,即时通讯服务器,支持视频语音

2015-01-14

即时通讯JAVA聊天

1 文件传输 2 远程控制 3 语音视频聊天 4 支持离线消息 5 支持自动重连

2015-01-14

给主函数传参

给主函数传参 通过int main int argc char argv[]

2014-09-28

空空如也

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

TA关注的人

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