aogogo的博客

私信 关注
aogogogo
码龄4年
  • 137,165
    被访问量
  • 87
    原创文章
  • 41,885
    作者排名
  • 107
    粉丝数量
  • 于 2016-12-08 加入CSDN
获得成就
  • 获得95次点赞
  • 内容获得80次评论
  • 获得457次收藏
荣誉勋章
兴趣领域
  • #后端
    #Python
TA的专栏
  • 书本
    4篇
  • Redis
    6篇
  • 高光谱
    5篇
  • java web核心
    2篇
  • 剑指offer
    20篇
  • 实习
    4篇
  • 数据库
    4篇
  • NLP
    1篇
  • 设计模式
    2篇
  • 数据结构
    1篇
  • 笔试
    1篇
  • Java面试
    6篇
  • JavaWeb
    21篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

Book04--修改软件的艺术:构建易维护代码的9条最佳实践

修改软件的艺术:构建易维护代码的9条最佳实践[美]David Scott Bernstein​ 这本书旨在帮助你降低构建与维护软件的成本。给出一些最佳实践的方法。我可以直接在摘要将这9条建议列出来,但是有一些很精妙的话、很切实的感受还是需要自己通过阅读书本去获得。读完这本书会让我对“软件开发工程师”这个职业产生一种自豪感和满足感,为自己是这个行业中的一员表示很庆幸。要知道在此之前我为自己只是单纯的“crud”有点被磨平了热情,但是现在又找回了初心,希望这本书也能为你带来一些不同以往的观点,刷新你的认
原创
31阅读
0评论
0点赞
发布博客于 14 天前

Book03--linux系统管理初学者指南

linux系统管理初学者指南​ 这本书更像是一个学习手册,介绍了linux的一些基本思想和常见指令。其中提到了两个点比较印象深刻:一个是linux设计思想,一个是程序和服务的概念。首先谈谈linux的设计思想,一共有以下几点:(1)一切皆文件(2)整个系统都是由众多小程序组成(3)避免和用户交互(4)使用文本保存配置信息。你会发现linux和windows系统是两种设计体系,windows用户操作更简单更直接,适合与人打交道,而linux是用各种操作指令和文件、和服务打交道,更适合于机器。两者像是“人
原创
33阅读
0评论
0点赞
发布博客于 14 天前

一文看懂redis知识全景--redis核心技术与实战系列

一、redis基础篇–数据类型、数据结构、单线程及多路复用机制
原创
30阅读
0评论
0点赞
发布博客于 1 月前

Book02--贫穷的本质:我们为什么摆脱不了贫穷

​ 这是一本关于贫穷的书。贫穷国家的穷人是怎么面对贫穷的?贫穷的陷阱是什么?他们想要什么,他们做出了什么样的选择?什么形式的援助最有意义。​ 但同时它是一本充又是一本充满希望的书,探讨了贫穷核心问题的同时,保留了对乐观主义精神和更多解决方案的寻求。这本书不仅告诉你如何对抗贫穷,还要让这个世界变得有意义。我们能够将世界变成一个更美好的地方。这可能无法在明天就实现,但一定会在我们触手可及的将来实现。不过。靠惰性思维是无法实现这个梦想的。我们希望你能明白,我们一步步耐心的研究,不仅仅是抗击贫穷的有效方式,.
原创
363阅读
2评论
0点赞
发布博客于 1 月前

redis核心技术与实战系列3:基础篇C

这节课,我就和你聊聊主从库同步的原理,以及应对网络断连风险的方案。主从库同步是如何完成的呢?主库数据是一次性传给从库,还是分批同步?要是主从库间的网络断连了,数据还能保持一致吗?一、主从数据库如何实现数据一致AOF 和 RDB,如果 Redis 发生了宕机,它们可以分别通过回放日志和重新读入 RDB 文件的方式恢复数据,从而保证尽量少丢失数据,提升可靠性。不过,即使用了这两种方法,也依然存在服务不可用的问题。比如说,我们在实际使用时只运行了一个 Redis 实例,那么,如果这个实例宕机了,它在.
原创
41阅读
1评论
0点赞
发布博客于 1 月前

redis核心技术与实战系列2:基础篇B

一、日志,宕机了,redis如何避免数据丢失Redis 的持久化主要有两大机制,即 AOF(Append Only File)日志和 RDB 快照。AOF 日志是如何实现的?AOF是写后日志,“写后”的意思是 Redis 是先执行命令,把数据写入内存,然后才记录日志.AOF 里记录的是 Redis 收到的每一条命令,以文本形式保存的。好处可以避免出现记录错误命令的情况。它是在命令执行后才记录日志,不阻塞当前的写操作三种写回策略AOF 配置项 appendfsyncAlways,同步写
原创
24阅读
0评论
0点赞
发布博客于 1 月前

redis核心技术与实战系列1:基础篇A

本章主要讲redis的初级篇,先从一个简单的simplekv的键值对构建引出相关的操作.需要存放什么类型的数据、对数据可提供什么操作、数据保存在哪里、如何查找数据、如何保障服务的高可用性?当你下想通了这些实操过程后,你就可以类比着探寻redis的实际原理了.基础架构:一个键值数据库包含什么学习最好的方式是先建立起“系统观”.若想深入理解和优化redis,必须对它的总体架构和关键模块有一个全局的认知,再深入到具体的知识点.假设我们构建一个简单的simplekv组建,我们会如何下手?1、可以存哪些数.
原创
53阅读
1评论
0点赞
发布博客于 2 月前

redis核心技术与实战系列0:开篇词

开篇词-这样学redis,才能技高一筹开篇专栏来记录我在极客时间上学习的redis核心技术与实战系列这门课.老师讲的不错,从树状知识图的框架讲起,再来细讲其中的一个个枝叶的知识点.可以帮助新手较快的了解redis整个知识框架图.在此做个简单的知识点梳理,一是帮助自己更好的吸收理解,二是重拾博客,更好的搭建自己的知识图谱体系.redis性能相关的问题问题一:为了保证数据的可靠性,redis需要在磁盘上读写AOF和RDB,但是在高并发场景下会带来两个新的问题:1、写AOF和RDB会造成redis性能
原创
44阅读
0评论
0点赞
发布博客于 2 月前

Book01--代码整洁之道:程序员的职业素养

对自己读过的书做一些梳理,这是第一本:《代码整洁之道:程序员的职业素养》。作者从成为专业的程序员需要什么态度,需要遵循什么样的原则,需要采取什么样的行动三个方面说起。对日程工作受用较大,值的一看。大致总结:1、职业素养体现在你如何解决问题,思路,步骤及反思>因为我们需要招聘的不是“经历丰富”的人,而是“有职业素养”的人。你遇到的问题可能很容易也可能很难,但我看重的并不是问题的难度,而是解决问题的方式、步骤以及反思的程度面对重大事故,一方面需要及时挽救,将危害降到最低。另一方面需.
原创
132阅读
1评论
0点赞
发布博客于 2 月前

redis入门之高级用法

这篇文章接上篇redis入门基础教程,写写redis的稍稍高级一点的用法~~文章目录part 3:高级用法1、HyperLogLog(pfadd/pfcount)Redis HyperLogLog 命令2、订阅/消费Redis 发布订阅命令3、redis事务Redis 事务命令4、Redis 安全some err:part 3:高级用法1、HyperLogLog(pfadd/pfcount)Redis HyperLogLog 是用来做基数统计的算法,优点是在输入元素的数量或者体积非常非常大时,计.
原创
33阅读
0评论
0点赞
发布博客于 3 月前

mac安装redis+使用超简单教程

概括:本文介绍了mac系统安装redis服务的操作步骤,同时对redis常见的五种数据结构的常见用法做了一个简单的介绍和打样,希望帮助新手更快的上手使用这门应用广泛的内存数据库.
原创
432阅读
0评论
0点赞
发布博客于 3 月前

问问线程

实现多线程的三种方式 1)一种是继承Thread类, 2)是实现Runable接口, 3)实现Callable接口,并与Future、线程池结合使用(Runnable和Callable都代表那些要在不同的线程中执行的任务。Runnable从JDK1.0开始就有了,Callable是在JDK1.5增加的。它们的主要区别是Callable的 call( ) 方法可以返回值和抛出异常,而Ru...
原创
162阅读
0评论
2点赞
发布博客于 3 年前

WEB22--Ajax

一、Ajax概述1、什么是同步,什么是异步同步现象:客户端发送请求到服务器端,当服务器返回响应之前,客户端都处于等待卡死状态异步现象:客户端发送请求到服务器端,无论服务器是否返回响应,客户端都可以随意做其他事情,不会被卡死2、Ajax的运行原理页面发起请求,会将请求发送给浏览器内核中的Ajax引擎,Ajax引擎会提交请求到服务器端,在这段时间里,客户端可以任意进行任意操作,...
原创
150阅读
0评论
0点赞
发布博客于 3 年前

在一个字符串中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1

 思路:用list集合来保存,循环遍历输入字符串,若list中包含该值就删除,否则就加入集合中。即:集合中最终保存的是只出现过一次的字符。package offer;import java.util.ArrayList;public class firstNotRepeatingChar { public static int FirstNotRepeatingChar(...
原创
1892阅读
3评论
1点赞
发布博客于 3 年前

输入一个链表,输出该链表中倒数第k个结点。

两种思路:1)用栈的思想,先把链表反转,然后再找出第k个节点。先把所有节点放进栈内,同时统计节点个数,若总节点数小于k则返回null。在弹出栈,倒数k即为弹出的第k个值。2)定义两个指针,一个指针先走k步,再两者一起往后走,当第一个指针到达终点的时候,第二个指针刚好到达倒数第k点,因为他们之间的距离恒为k。 import java.util.List;import java...
原创
197阅读
0评论
0点赞
发布博客于 3 年前

计算机网络知识点整理

鉴于计算机网络那几层协议笔试见过多次,但是都没有合理的总结归纳,特此来分析一波。前几天看到一段话,大意是说:一句话不管多么有道理,假设你想让对方听进去,就必须以别人听得进的方式去表述,否则就大概率无效,所以表达的方式真的是一件极其重要的事,怎样让人家听进去才是你的本事,纵使你的道理多真、本领多深,也得为听者考虑。话不多说,学习去了。1.OSI模型七层结构七层协议的作用: 1.物理层...
原创
13760阅读
1评论
26点赞
发布博客于 3 年前

输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)

 定义:父树包含子树的所有节点,注意,空树不是任何数的子树。思路:用递归来实现,从A树的根节点开始,判断其所有的节点是不是依次和树B相同,如不同,递归调用函数,继续判断树A当前节点的左子树的所有节点或右子树的所有节点是否和树B所有节点相同,直到遍历到父树A的叶子节点,如果不是完全相同,则树B不是树A子树,如果直到遍历到树B的叶子节点,其所有节点在树A中均有,则树B是树A的子树。isSubt...
原创
2735阅读
2评论
1点赞
发布博客于 3 年前

荷兰国旗问题

 问题:输入RGB三种字母的随机排列的字符串,要求输出R在左边G在中间B在右边的情况。eg  输入 :RBGRBGGRBGGRGBRGGRG       输出:RRRRRRGGGGGGGGGBBBB思路:定义两个指针变量,分别划分最左端R和最右端B,对当前数组循环遍历,如若为R则与R区间的下一个指针交换,若为B则与B区间的前一个指针位置交换,注意:前者需要 i++ ; 后者 i 不变 ...
原创
195阅读
0评论
0点赞
发布博客于 3 年前

输入字符串返回其中出现次数最多的字母的大写形式

题目: eg:    输入:12*%236addarbW  EE  FSFXAaA (无所谓数字字母特殊符号空格);    输出:A5 思路:先把输入字符串全转换成大写形式,再定义一个26位的数组,判断当前值,若是字母就将它存放到与A的差值数对应的数组序号里(先把数组号取出,将其次数加一,再放回去)。即数组序号代表A-Z的序号,数组的值对应字母出现的次数。最后遍历,取出最大值。值得注意的是...
原创
500阅读
0评论
0点赞
发布博客于 3 年前

WEB10_JDBC连接池&DBUtils

连接池传统JDBC的操作对连接的对象销毁不是特别好.每次创建和销毁连接都是需要花费时间.可以使用连接池优化的程序. 在程序开始的时候,可以创建几个连接,将连接放入到连接池中.用户使用连接的时候,可以从连接池中进行获取.用完之后,可以将连接归还连接池.-----解决性能问题,即资源浪费 【常见的开源的数据库连接池】:DBCP:DBCP(DataBase connectio...
原创
157阅读
0评论
0点赞
发布博客于 3 年前

WEB08_MySQL&JDBC

MySQL 1.创建一张表create table 表名(字段名 类型(长度) [约束],字段名 类型(长度) [约束],字段名 类型(长度) [约束]);2.查看数据库表创建完成后,我们可以查看数据库表   show tables;查看表的结构    desc 表名;3.删除表记录说说delete与truncate的区别?delete删除的时候...
原创
81阅读
0评论
0点赞
发布博客于 3 年前

WEB05_jQuery篇

  jquery相关的知识 Jquery它是javascript的一个轻量级框架,对javascript进行封装,它提供了很多方便的选择器。供你快速定位到需要操作的元素上面去。还提供了很多便捷的方法。-*            Jquery它是一个库(框架),要想使用它,必须先引入!jquery-1.8.3.js:一般用于学习阶段。jquery-1.8.3.min.js:用于项...
原创
107阅读
0评论
0点赞
发布博客于 3 年前

JavaWeb04---JavaScript02

1、鼠标移动事件 --------------------- onmousemove(event) : 鼠标移动事件,event是事件对象。  onmouseover : 鼠标悬停事件,当鼠标移动到某个控件上面的时候发生 onmouseout : 鼠标移出事件,当鼠标从控件上移开的时候  2、鼠标点击事件 ---------------------onclick : 当鼠标单击某...
原创
83阅读
0评论
0点赞
发布博客于 3 年前

JavaWeb03---JavaScript

一、JavaScript1.含义:  1)JavaScript是一种脚本语言(即轻量级的编程语言)  2)是一种解释性语言(代码执行不进行预编译)2.作用:  HTML:整个网站的骨架。  CSS: 对整个网站骨架的内容进行美化(修饰)  Javascript: 让整个页面具有动态效果。3.组成部分:    1)ECMAScript:它是整个 javascript ...
原创
74阅读
0评论
0点赞
发布博客于 3 年前

JavaWeb02---HTML&CSS

一、表单相关知识1.表单:  所有需要提交到服务器端的表单项必须使用<form></form>括起来  form标签属性(有两个):    1)action,整个表单提交的位置(可以是一个页面,也可以是一个后台java代码)    2)method,表单提交的方式(get / post / delete ... ...等7种)       get提交...
原创
117阅读
0评论
0点赞
发布博客于 3 年前

JavaWeb01---HTML

1.什么是HTML?(Hyper Text Markup Language:超文本标记语言)    超文本:功能比普通文本更加强大    标记语言:使用一组标签对内容进行描述的一门语言(它不是编程语言)    为什么要学习HTML?  可以利用HTML来定义网站中的文章内容、标题、连结、图片等,让浏览器知道网站整个架构的呈现2.语法和规范?    HTML文件都是以.htm...
原创
92阅读
0评论
0点赞
发布博客于 3 年前

我说gc你说哟 (二)

这是gc的第二部分,介绍了典型的垃圾收集算法+典型的垃圾收集器摘选自点这里---------------------------------收集算法垃圾收集算法主要有:标记-清除、复制、标记-整理。1、标记-清除算法----Mark-Sweep  最基础的垃圾回收算法,易实现,分为两个阶段:标记阶段和清除阶段。标记阶段的任务是标记出所有需要被回收的对象,清除阶段就是回收被标记的...
原创
153阅读
0评论
0点赞
发布博客于 3 年前

我说gc你说哟 (一)

原文摘录自:http://www.importnew.com/23633.html虽然我还没有被问到,但是我肯定会被问到,来自挣扎线上苦苦挣扎的阿狗一个,暴风哭泣~.~-----------------Java堆内存Java堆是被所有线程共享的一块内存区域,所有对象实例和数组都在堆上进行内存分配。为了进行高效的垃圾回收,虚拟机把堆内存划分成新生代(Young Generation)、老...
原创
149阅读
0评论
0点赞
发布博客于 3 年前

我理解的JVM-----Java中JVM虚拟机详解

很多大佬们在推荐深入理解jvm这本书,奈何时间不够用来博客上简单的取取经记录一下,再此立个flag,明天去图书馆还书的时候一定一定要泡一整天,墙裂建议学校开个通宵自习室!!!我去买咖啡@.@1、 什么是JVM?  JVM是Java Virtual Machine(Java虚拟机)的缩写,是一种用于计算设备的规范,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字...
原创
815阅读
1评论
2点赞
发布博客于 3 年前

智力题就是以我的智力猜出来的题

今天随便做题的时候看到的一道智力题,我爱数学,数学使我快乐。感谢我的数学教师身份,嘿嘿嘿,对图表不敏感,但是很喜欢数字呢。eg1:一道读不懂题目看图好理解的飞机智力题----------------每个飞机只有一个油箱,飞机之间可以相互加油(注意是相互,没有加油机),一箱油可供一架飞机绕地球飞半圈. 问:为使至少一架飞机绕地球一圈回到起飞时的飞机场,至少需要出动几架飞机? (所有飞机从同一...
原创
754阅读
0评论
0点赞
发布博客于 3 年前

七大排序算法

阿狗要好好来整理一下啦,感觉自己数据结构不太熟,比如排序算法的思想大概理解,用代码复现又是另一回事,懂得不同场景下的应用又又又又是另一回事,碰到笔试排序算法的题又双叒叕是另另另一回事。所以说啊,学无止境,学海无涯阿狗得飘啊。还有还长一段时间呢,阿狗加油ヾ(◍°∇°◍)ノ゙01---算法介绍:1、冒泡排序思想:通过与相邻元素的比较和交换来把最大的值交换到最后面。这个过程类似于水泡一样...
原创
118阅读
0评论
0点赞
发布博客于 3 年前

下一个排列

既然你诚心诚意的发问了,我就死乞白赖的写一下吧,写(捡)一个是一个,这条鱼在乎。实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,...
原创
77阅读
1评论
0点赞
发布博客于 3 年前

面试知识点整理

突然在电脑里发现上次面58整理的部分java知识点,想着顺便理一下吧,不够全面,好歹也是用心整理的,发现有的博客写的真不错,奈何自己还是以整理为主,多向牛人们学习吧。1)---hashmap的底层原理:HashMap是一个用于存储Key-Value键值对的集合,每一个键值对也叫做Entry。这些个键值对(Entry)分散存储在一个数组当中,这个数组就是HashMap的主干。按照特性来说...
原创
102阅读
0评论
0点赞
发布博客于 3 年前

常用的设计模式有哪些?

讲一下什么是设计模式?常用的设计模式有哪些?设计模式就是经过前人无数次的实践总结出的,设计过程中可以反复使用的、可以解决特定问题的设计方法。单例(饱汉模式、饥汉模式)1、构造方法私有化,除了自己类中能创建外其他地方都不能创建2、在自己的类中创建一个单实例(饱汉模式是一出来就创建创建单实例,而饥汉模式需要的时候才创建)3、提供一个方法获取该实例对象(创建时需要进行方法同步)工...
原创
14703阅读
0评论
1点赞
发布博客于 3 年前

设计模式系列之单例模式

单例模式概念:  java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例、饿汉式单例.  单例模式有以下特点:  1、单例类只能有一个实例。  2、单例类必须自己创建自己的唯一实例。  3、单例类必须给所有其他对象提供这一实例。单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对象、对话...
原创
102阅读
0评论
0点赞
发布博客于 3 年前

Spring-aop事务

一、spring封装事务管理代码1、事务操作:打开事务、提交事务、回滚事务2、事务操作对象        因为在不同平台,操作事务的代码各不相同。spring提供了一个接口: PlatformTransactionManager 接口。 2.1 PlatformTransactionManager 接口:        DataSourceTransactionManager...
原创
114阅读
0评论
0点赞
发布博客于 3 年前

spring整合JDBC

一、spring提供了很多模板整合Dao技术二、spring中提供了一个可以操作数据库的对象,对象封装了jdbc技术1、JDBCTemplate --> JDBC模板对象(与DBUtils中的QueryRunner非常相似) @Test public void fun1() throws Exception{ //0 准备连接池 ComboPooledDataS...
原创
128阅读
0评论
0点赞
发布博客于 3 年前

springday_02复习

复习一.注解代替xml配置    准备工作:        4+2 + spring-aop包        xml中导入context约束        在xml中开启扫描包中类的注解    注解:        @Component("BeanName") 将对象注册到spring容器            |-    @Controler            |-   ...
原创
110阅读
0评论
0点赞
发布博客于 3 年前

spring中的aop

spring中的aop一、aop思想介绍二、spring中的aop概念 三、spring实现aop的原理1、动态代理(优先)        被代理对象必须要实现接口,才能产生代理对象,如果没有接口将不能使用动态代理技术2、cglib代理(没有接口)        第三方代理技术,cglib代理,可以对任何类生成代理,代理的原理是对目标对象进行继承代理...
原创
88阅读
0评论
0点赞
发布博客于 3 年前

使用注解配置spring+junit 测试

使用注解配置spring步骤:1、导包:4+2+spring-aop2、为主配置文件引入新的命名空间(约束)3、开启使用注解代理配置文件<!-- 指定扫描cn.itcast.bean报下的所有类中的注解. 注意:扫描包时.会扫描指定报下的所有子孙包 --><context:component-scan base-package="cn.itcast....
原创
3864阅读
0评论
1点赞
发布博客于 3 年前

springday_01复习

spring_day011.spring介绍    spring并不局限于某一层.    spring是对象的容器,帮我们"管理"项目中的所有对象    2.spring搭建    1>导包 4+2    2>准备类    3>书写配置(src/applicationContext.xml)    4>书写代码测试    3.spring中的概念 ...
原创
74阅读
0评论
0点赞
发布博客于 3 年前

spring属性注入

一、注入方式applicationContext.xmlA)set方式注入<!-- set方式注入: --> <bean name="user" class="cn.itcast.bean.User" > <!--值类型注入: 为User对象中名为name的属性注入tom作为值 --> <property name="name"
原创
125阅读
0评论
0点赞
发布博客于 3 年前

spring概念+ spring配置详解

spring概念A)思想IOC:Inverse Of Control 反转控制        将我们创建对象的方式反转,以前对象的创建是由开发人员自己维护,包括依赖关系也是自己注入,使用spring之后,对象的创建以及依赖关系,可以由spring完成创建以及注入,反转控制就是反转对象的创建方式,从自己创建反转给程序(spring)。DI:Dependency Injection 依...
原创
204阅读
0评论
1点赞
发布博客于 3 年前

spring介绍+spring搭建

学习spring框架啦。今天做一些基础概念的整理。每日三省吾身,有offer了吗,有学习了吗,有对象了吗,嘻嘻,动力瞬间强了很多呢。 spring介绍:1)三层架构中spring位置:先上一张三层架构具体划分图再来一张SPRING的效果图2)spring一站式框架IOC:Inversion of Control 控制反转 指的是 对象的创建权反转(交给 )给 S...
原创
169阅读
0评论
0点赞
发布博客于 3 年前

找出数组中有一个数字出现的次数超过数组长度的一半返回这个数字

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。思路:若超过一半,按顺序排列数组的中间值肯定就是这个数,将arr[length/2]这个数字提出来做比较,计算出现的次数count与length/2的大小,若大则返回这个数字,否则返回0...
原创
2327阅读
4评论
0点赞
发布博客于 3 年前

打印能拼接出的所有数字中最小的一个

输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。思路:首先将数组所有的数放到list集合中,用collections.sort(list,new Comparator<>(){})重写一个compare方法,将两个整数以拼接的形式表达并比较大小,按这个方法...
原创
335阅读
0评论
0点赞
发布博客于 3 年前

求出任意非负整数区间中1出现的次数

求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1 到 n 中1出现的次数)。思路:直接把所有1~N的数字用StringBuffer存储再用append拼接起来...
原创
318阅读
0评论
0点赞
发布博客于 3 年前

连续子向量的最大和

给一个数组,返回它的最大连续子序列的和.例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。思路一:暴力解法,i循环遍历数组,j作为它的累积求和的变量循环剩下的数组。将所有结果放到list集合中,排序,选出最大的返回出来。import java.util.List;import java.util.Collections;imp...
原创
1090阅读
0评论
0点赞
发布博客于 3 年前

矩阵顺时针打印

输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.思路:定义四个变量,分别代表矩阵的左上角和右下角,top、bottom、left、right。顺时针打印就是从 left到ri...
原创
92阅读
0评论
0点赞
发布博客于 3 年前

输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。

 考虑递归,listnode的两个方法,list.val和list.next.用图解释:/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution {...
原创
89阅读
0评论
0点赞
发布博客于 3 年前

调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,保证相对位置不变。

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 i 定义数组长度的循环变量, j 定义剩余数组的比较次数。若连续的【 j 】和【 j+1 】分别是偶数和奇数的话,就交换两者位置。最后奇在前,偶在后。如:原数组为{2,6,7,1,4,5}i = 0;      j...
原创
495阅读
0评论
0点赞
发布博客于 3 年前

求base的exponent次方

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。这道题要考虑的指数正和反的区别,另外注意,result的初始值是1.0,要设置为double类型;public class Solution { public double Power(double base, int exponent) { double res...
原创
298阅读
0评论
0点赞
发布博客于 3 年前

输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

两种方法。第一种,是用位运算,将1每次左移,和数字进行&运算,如果成功,则返回1.       第二种,将整数通过方法转换为二进制数,然后统计其中1的数量 public class Solution { public int NumberOf1(int n) { int number = 0; String string = Integer.toBinar...
原创
108阅读
0评论
0点赞
发布博客于 3 年前

基于句子相似度的FAQ问答系统

总结一波我的项目之一,历史久远,要把它理清一下。 Introduce:日趋增多的网络信息使用户很难迅速从搜索引擎返回的大量信息中找到所需内容。自动问答系统为人们提供了以自然语言提问的交流方式,为用户直接返回所需的答案而不是相关的网页,具有方便、快捷、高效等特点。Process:本文的问答系统采用了一个FAQ(Frequently Asked Questions)问答库,并基于句子相似度...
原创
14674阅读
17评论
12点赞
发布博客于 3 年前

网上商城4--订单模块+在线支付

1、订单的提交分析和实体的创建定义订单实体,order和orderitempublic class Order { /*`oid` varchar(32) NOT NULL, `ordertime` datetime DEFAULT NULL, `total` double DEFAULT NULL, `state` int(11) DEFAULT NULL...
原创
4917阅读
2评论
1点赞
发布博客于 3 年前

网上商城3---订单模块

订单模块是指将准备购买的商品变成已经购买的商品,分为以下几步:1)提交订单,获得购物车和对应的用户信息,将数据封装到Order里;2)调用service保存订单,并将购物车的信息清空;3)请求转发到订单详情模块准备工作:创建表...
原创
4571阅读
0评论
4点赞
发布博客于 3 年前

网上商城3---购物模块

使用的是Servlet技术实现的,使用mvc模式实现,包括表现层,控制层,业务层,用到的数据库是mysql数据库,今天我们主要来说一下购物车功能的实现: 购物车:实现添加商品、删除购物项、清空购物车、结算功能。购物模块准备工作购物项CartItem对象购物车Cart对象...
原创
751阅读
1评论
2点赞
发布博客于 3 年前

51信用卡电话面试

自我介绍:学术项目不怎么感兴趣,问的网上商城问题总结如下:1)用户模块怎么实现的,流程图,可以从功能角度来说,添加购物车成功后面还有配送之类的?但是这个我没做没的说2)mysql查询数据,怎么优化,数据库索引查询3)表单的建立,各个表之间的关系,存储方式4)redis缓存的是什么,为什么选这个5)redies部署在哪,java体现在?这个我真没明白是什么意思,然后一堆问我为什么不用框架。mybat...
原创
993阅读
0评论
0点赞
发布博客于 3 年前

mysql常用语句整理

昨天做了个BIGO的笔试,发现考的很多SQL语句我都有点模糊。想把这些常用的常考的sql语句做一下整理。还是那种感觉,更多东西你好像懵懵懂懂的知道,但是实际问到了让你手撕代码又很虚,还是要注重基础及整理啊。任重道远,加油!!MySQL常用命令create database name; 创建数据库use database name; 选择数据库drop database name 直接删除数据库,不...
原创
190阅读
0评论
0点赞
发布博客于 3 年前

网上商城2--前台商品管理

前台商品管理模块准备工作1、创建表并完善数据CREATE TABLE `product` ( `pid` varchar(32) NOT NULL, `pname` varchar(50) DEFAULT NULL, `market_price` double DEFAULT NULL, `shop_price` double DEFAULT NULL, `pim...
原创
653阅读
0评论
0点赞
发布博客于 3 年前

网上商城2---分类管理

分类管理:查询所有分类准备工作:创建数据库表、javabean、dao接口和实现类、service接口和实现类 步骤一:创建分类表步骤二:创建javabean Category步骤三:编写dao接口、及其实现类步骤四:编写service 代码实现步骤一:完善IndexServlet,显示/jsp/index.jsp查询分类public class In...
原创
1070阅读
0评论
0点赞
发布博客于 3 年前

项目流程之用户模块

1、目录结构2、导入jar包 3、工具类3.1JdbcUtils3.2MyBeanUtils3.3UUIDUtils3.4编码过滤器3.5导入jsp页面--修改index.jsp页面,使其通过servlet访问jsp 4前台用户模块步骤1:创建表,初始化数据步骤2:创建JavaBean步骤3:编写dao接口,及实现类步骤4:编写ser...
原创
1080阅读
0评论
0点赞
发布博客于 3 年前

网上商城--总

一、模块分类1.用户模块用户注册功能发送邮件激活用户表单的校验用户的登录功能自动登录用户的注销功能2.商品模块首页热门商品和最新商品功能商品分类商品的列表(分页)商品详细信息浏览记录功能3.购物车模块将商品加入购物车展示购物车功能4.订单模块(多表和事务)提交订单展示订单在线支付5.后台的分类的模块分类信息...
原创
1714阅读
1评论
5点赞
发布博客于 3 年前

数据库内联、左联和外联的区别

在关系型数据库中,数据分布在许多相关的表中,所以有时候的查询会涉及到多表查询。INNER JOIN(内联):两个表a,b 相连接,取出符合连接条件的字段LEFT JOIN(左联):先返回左表的所有行,再加上符合连接条件的匹配行RIGHT JOIN(右联):先返回右表的所有行,再加上符合连接条件的匹配行一、内连接——最常用 定义:仅将两个表中满足连接条件的行组合起来作为结果集。 在内连接中,只有在两...
原创
14412阅读
2评论
6点赞
发布博客于 3 年前

表单的建立

数据库中如何建立表的参照关系? 参照关系就是主外键,其最重要的作用是保护你的数据的完整性。 SQL的主键和外键的作用: 外键取值规则:空值或参照的主键值。(1)插入非空值时,如果主键表中没有这个值,则不能插入。(2)更新时,不能改为主键表中没有的值。(3)删除主键表记录时,你可以在建外键时选定外键记录一起级联删除还是拒绝删除。(4)更新主键记录时,同样有级联更新和拒绝执行的选择。简而言之,SQ...
原创
616阅读
0评论
0点赞
发布博客于 3 年前

数据库索引之优化查询速度

(一)索引的作用索引通俗来讲就相当于书的目录,当我们根据条件查询的时候,没有索引,便需要全表扫描,数据量少还可以,一旦数据量超过百万甚至千万,一条查询sql执行往往需要几十秒甚至更多,5秒以上就已经让人难以忍受了。提升查询速度的方向一是提升硬件(内存、cpu、硬盘),二是在软件上优化(加索引、优化sql)。(二)mysql的索引类型:mysql的索引有5种:主键索引、普通索引、唯一...
原创
4482阅读
2评论
8点赞
发布博客于 3 年前

旋转数组的最小数字

题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。思路:数组可分为两个子序列,要么中间数大于数组第一个数,则最小值在中间数到尾之间;          否则,...
原创
56阅读
0评论
0点赞
发布博客于 3 年前

用两个栈来实现一个队列

题目:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路:    栈的特性是:后进先出,而队列的特性是:先进先出。这里使用两个栈实现队列有点负负得正的意思。 栈1负责添加,而栈2负责删除。【操作两个“先进后出”的栈实现一个“先进先出”的队列CQueue】---a先进,a先出用两个栈模拟队列操作:1)stack1负责入栈,元素{a,b,c}以顺序入栈2)s...
原创
615阅读
0评论
0点赞
发布博客于 3 年前

重建二叉树

输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:这种二叉树的问题最好画图来解决,比较直观。先画出它的图像先先序遍历:遍历顺序规则为【根左右】中序遍历:遍历顺序规则为【左根右】后序遍历:遍历顺序规则为【左右根...
原创
68阅读
0评论
0点赞
发布博客于 3 年前

WEB19--事务

一、事务概述1.什么是事务一件事情有n个组成单元 要不这n个组成单元同时成功 要不n个单元就同时失败【同时性,要死一起死,要活一起活】就是将n个组成单元放到一个事务中2.mysql的事务默认的事务:一条sql语句就是一个事务 默认就开启事务并提交事务手动事务:1)显示的开启一个事务:start transaction2)事务提交:commit代表从开启事务到事务提交...
原创
107阅读
0评论
0点赞
发布博客于 3 年前

WEB17&18 jsp动态页面技术(JSP/EL/JSTL)

一、JSP技术jsp简介JSP(Java Server Pages)是JavaWeb服务器端的动态资源,它与html页面的作用是相同的,显示数据和获取数据。 jsp: 作为请求发起页面,例如显示表单、超链接。       : 作为请求结束页面,例如显示数据。 Servlet:         作为请求中处理数据的环节。 jsp的组成  jsp = html + java脚本 ...
原创
336阅读
0评论
0点赞
发布博客于 3 年前

阿里java开发后台电话面试

   刚电话面完,感觉要总结啊,心虚的很。    简历是在官网实习投的,后面好像获取了内推资格,然后完成了测评和笔试,当晚做完第二天上午10点左右就有显示杭州的座机过来,犹豫一下接了直接说杭州的阿里巴巴,有没有时间谈一下,改约到下午,忐忑一中午,大概2点多再打过来的,于是开始了:自我介绍:基本信息,刚说到java web开发方面的网上商城,他就明显感兴趣,针对session问的很具体,感觉他是拿着...
原创
1395阅读
0评论
1点赞
发布博客于 3 年前

WEB16-会话技术Cookie&Session servlet三大域

一、会话技术简介1.存储客户端的状态由一个问题引出今天的内容,例如网站的购物系统,用户将购买的商品信息存储到哪里?因为Http协议是无状态的,也就是说每个客户访问服务器端资源时,服务器并不知道该客户端是谁,所以需要会话技术识别客户端的状态。会话技术是帮助服务器记住客户端状态(区分客户端) 2.会话技术从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,成为一次会话。会...
原创
112阅读
0评论
0点赞
发布博客于 3 年前

WEB15---HttpServletRequest

案例一、完成用户注册案例二、完成登录错误信息的回显1.request的运行流程  2.通过抓包工具抓取Http请求 3.通过request获得请求行获得客户端的请求方式(get\post等):String getMethod()获得请求的资源:String getRequestURI() StringBuffer getRequestURL() ...
原创
115阅读
0评论
0点赞
发布博客于 3 年前

从尾到头打印链表+反转链表

3从尾到头打印链表思想1):直接堆栈先进后出,调换顺序考点:    新建栈                                            Stack<Integer> stk=new Stack<Integer>();             进栈:                                            s...
原创
224阅读
0评论
0点赞
发布博客于 3 年前

腾讯实习一面

   本来想说有没有这个必要写的,毕竟没有什么可参考的信息,但好歹是人生第一次面试总结,还是需要记录一下的。   背景:腾讯,实习,java后台开发   面试过程:忘了有没有自我介绍了,反正直接讲项目,没有明确规定是技术还是学术,所以我挑的学术讲的,这就是问题所在了,因为学术的东西和技术岗位不相关,所以可挖掘的信息不多,大概问题是:怎么实现图像分割的?特征空间是不是和机器学习相关?    手写程序...
原创
607阅读
0评论
0点赞
发布博客于 3 年前

数组 +字符串

记录自己在剑指offer刷题经验,坚持每天做几题理理思路学学算法的思想,其实啥都不会,看刷一遍能不能开拓一下先1)二维数组中查找目标值思路是:从二维数组的右上角或者左下角开始寻找,比如右上角开始,若值比target大;则这一列的值都将大于target所以cols-1;若值比target小则rows+1向下一行继续收索;代码如下考点:1)数组的行列值   int col=arra...
原创
104阅读
0评论
0点赞
发布博客于 3 年前

WEB13---JavaWeb核心之Servlet

一、Servlet简介1.什么是Servlet    Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。   Servlet 运行在服务端的Java小程序,是sun公司提供一套规范(接口),用来...
原创
84阅读
0评论
0点赞
发布博客于 3 年前

HTTP协议详解

HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。HTTP协议的主要特点可概括如下:  1.支持客户/服务器模式。  2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。  3.灵活:HT...
原创
103阅读
0评论
0点赞
发布博客于 3 年前

WEB12_Http&Tomcat

一、Http协议1.什么是Http协议  HTTP,超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的 一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为 了提供一种发布和接收HTML页面的方法2.Http协议的组成  Http协议由Http请求和Http响应组成,当在浏览器中输入网址访问某个网站时, 你的浏览...
原创
82阅读
0评论
0点赞
发布博客于 3 年前

配置tomcat

1.Tomcat的下载与安装(1)下载Tomcat官网地址:http://tomcat.apache.org/whichversion.html(2)安装TomcatTomcat有安装版和解压版(绿色版)安装版以.exe形式的安装包,双击安装到我们的电脑上,用的比较少解压版,即绿色版,解压后直接使用,用的比较多 2.Tomcat的目录结构 bin:脚...
原创
81阅读
0评论
0点赞
发布博客于 3 年前

WEB11---xml

一、模拟servlet执行为了实现访问不同路径(/hello)执行不同的资源(HelloMyServlet),我们需要使用XML进行配置;为了限定XML内容,我们需要使用xml约束(DTD或schema);为了获得xml的内容,我们需要使用dom4j进行解析。 1.1 什么是XML   XML全称是Extensible Markup Language[可扩展的标记语言]。X...
原创
97阅读
0评论
0点赞
发布博客于 3 年前

Retinal vessel extraction by matched filter with first-order derivative ofGaussian

开始看匹配滤波呢,并不知道是个什么东东,纪念逝去的一年,为了不浪费这七年,得怎样拼命的赶路啊。。。请告诉我我的抉择没有错,请一个人在努力的前行吧!!!   摘要:MF对血管和非血管边缘都有很强的响应,因此提出MF-FDOG(the matched filter with first-order derivative of the Gaussian)检测血管,血管剖面结构类似于镜像高斯分布,我们用一
原创
544阅读
0评论
0点赞
发布博客于 4 年前

基于PCA和SVM的高光谱遥感图像分类研究

本文选自《基于PCA和SVM的高光谱遥感图像分类研究 》–张亮,感觉对一些概念了解的还行但是和实际结合就有点犯晕了,做部分整理,强调理解。   摘 要:由于高光谱图像波段数目多,各波段间具有较强的相关性,因此通过主成分分析(PCA)方法对高光谱数据进行预处理,达到了降维的目的,同时也去除了噪声波段。用支持向量机方法对高光谱遥感图像进行分类,可实现图像的分类识别。1 引 言  高光谱遥感图像分类方法
原创
8438阅读
35评论
8点赞
发布博客于 4 年前

基于主动学习的高光谱图像分类方法研究

主动学习
原创
2072阅读
2评论
4点赞
发布博客于 4 年前

基于统计方法的分类——主成分分析法

本文参考于http://wiki.mbalib.com/wiki/%E4%B8%BB%E6%88%90%E5%88%86%E5%88%86%E6%9E%90%E6%B3%95 一、什么是主成分分析法 主成分分析也称主分量分析,旨在利用降维的思想,把多指标转化为少数几个综合指标。   在统计学中,主成分分析(principal components analysis,PCA)是一种简化数据
原创
5658阅读
0评论
2点赞
发布博客于 4 年前

高光谱背景知识介绍

一 光谱怎么作用 : 组成物质的分子、原子的种类及其排列方式决定了该物质区别于其它物质的本质特征。当电磁波入射到物质表面,物质内部的电子跃迁,原子、分子的震动、转动等作用使物质在特定的波长形成特有的吸收和反射特征,根据这个吸收或者反射的光谱,就可以反映出物质的组成成分与结构的差异。不同的物质,光谱不同,特定的物质有特定的光谱,这是研究的方向,也是得出结论的根据。二 高光谱遥感:
原创
8142阅读
1评论
4点赞
发布博客于 5 年前