Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

线性实现最大子序列和

线性实现最大子序列和

要求时间复杂度为O(n),实现最大子序列的和,并找到最大序列的起始位置和终止位置。例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,最大子序列为3, 10, -4, 7, 2, 因此输出为该子数组的和18,开始位置为2,终止位置为6。dp[i]=max{num[i],dp[i-1]},其中dp[i]表示以i为末尾节点的最大子序列和,具体看接下来的代码,我这边已经写的很详细了。如果大家都什么好的优化或者有什么没考虑到的还请大家积极指出。p...
随机生成长度为len的密码,且包括大写、小写英文字母和数字

随机生成长度为len的密码,且包括大写、小写英文字母和数字

一道华三面试题,随机生成长度为len的密码,且包括大写、小写英文字母和数字,主要Random类的使用,random.nextInt(len)表示生成[0,len)整数。具体实现见下面代码,已经很详细了。package TestProject;import java.util.Random;import java.util.Scanner;/** * 随机生成长度为len的密码,且包括大写、小写英文字母和数字 * @author xuhui */public...
恒生电子笔试题

恒生电子笔试题

(一)论述题1.你知道几种设计模式,介绍你了解的设计模式;2.java中final的用法,请用程序示例说明;3.jsp有哪些内置对象;4.linux系统的命令;5.设计表结构,背景:一个小学有六个年级,每个年级有五个班,现在校领导想要统计全校学生年级从高年级到低年级各科成绩从高到低,全校学生总成绩;6.写第五题的sql;(二)算法题1.有数组a[]={12,13,14,2,4,5,7,9,3,6},中间有连续递增的子数组,如{12,13,14},{2,4,...
几大排序算法的Java实现

几大排序算法的Java实现

很多的面试题都问到了排序算法,中间的算法和思想比较重要,这边我选择了5种常用排序算法并用Java进行了实现。自己写一个模板已防以后面试用到。大家可以看过算法之后,自己去实现一下。1.冒泡排序:大数向下沉,小数向上浮。package TestProject;/** * 冒泡排序 * @author xuhui * */public class SortAll {public static void main(String[] args){int[] a = ...
Java算术运算符、关系运算符和位运算符

Java算术运算符、关系运算符和位运算符

算术运算符1.Java的算数运算符包括+(加)、-(减)、*(乘)、/(除)、%(取余),在运算过程中出现的隐式转换原则和C语言一样;2. 高位数据向低位数据转化要使用强制转化;关系运算符1.Java的关系运算符包括>、<、>=、<=、==、!=,其使用规则和C语言一样,在复杂的关系运算语句中同样有短路原则;2.java逻辑运算的结果使用输出语句输出答案只能是false或者true,结果是boollean类型,这一点跟C语言不一样!...
Qt5设置应用程序图标及程序的发布

Qt5设置应用程序图标及程序的发布

1、设置应用程序的图标。Qt4的时代里,为win下的Qt应用程序添加图标需要创建一个.rc文件,然后在里面输入一行代码,还要修改.pro文件。而在Qt5中变得十分简单:只需要将.ico图标文件放到源码目录,然后在.pro文件中添加代码: RC_ICONS=文件名即可。(本人曾尝试用一个png或者是别的格式的图片作为图标,但是并不能成功,可能图标只能使用ico格式的图片吧!希望大家多多尝试)2、程序的发布使用Qt写一个间的helloword,然后在编译的时候...
C语言文件函数

C语言文件函数

FILE *fp:其中的FILE应该大写,它实际上是系统定义的一个结构,在stdio.h文件中。该结构中有文件名,文件状态,文件当前的读写信息等。fp是指向FILE结构的指针变量,通过fp可以找到某个文件的信息结构体,然后找到该文件,对文件实施操作。FILE *fp=fopen("文件路径及名称","打开方式"),该函数执行失败返回NULL打开方式:r:打开一个文本文件只读,前提是文件必须存在w:打开一个文本文件只写,若文件不存在则创建该文件 a:对一个文...
Python装饰器详解

Python装饰器详解

装饰器主要是用来包装函数,对于一些常用的功能,譬如:日志打印,函数计时,身份认证。我们可以使用装饰器来实现,这样可以降低整个程序的复杂度和减少程序的代码量。它实际上就是函数,不同的是,它把一个函数当做参数,然后返回一个替代版函数。下面看一个简单的示例:def add_number(func):def adder(arg):return func(arg)+100return adderdef f(x):return xf=add_number(f)prin...
C与C++函数声明时的几个小的语法差异

C与C++函数声明时的几个小的语法差异

C与C++函数声明时的几个小的语法差异1 无参函数的声明void f(){}int main(void){f(10,“hello");return 0;}上述代码在C语言中是完全正确的。但是在C++中确是错误的。void f() * 在C中表示函数f可以接受任何类型,任意数量的参数。(然而并没有提供如何利用这些参数的机制,如果想使用可变参数函数,格式为 void f(type a1,…))。 * 而在C++中表示函数f不接受任何参...
Java设计模式之简单工厂模式

Java设计模式之简单工厂模式

近来在学习Java的设计模式,一直觉得设计模式很难,所以一直没有去接触,一则是工作比较忙没有闲工夫去学习,二来是因为自己比较懒所以也懒得动,幸亏今天在公司还挺闲的,所以找了一本书来学习下Java的设计模式。简单工厂的定义应用简单工厂来解决问题的思路简单工厂的结构和说明简单工厂代码使用简单工厂重写示例模式讲解简单工厂中方法的写法简单工厂的优缺点思考简单工厂1、简单工厂的定义提供一个创建对象实例的功能,而无须关系其具体的实现。被创建实例的类型可以是接口、抽象类...
Python之RabbitMQ

Python之RabbitMQ

RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。他遵循Mozilla Public License开源协议。MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消 息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过 队列...
Python IO多路复用

Python IO多路复用

IO多路复用是一个系统层面的概念,让我们先搞清楚为什么使用IO多路复用: 由于进程的执行过程是线性的(也就是顺序执行),当我们调用低速系统I/O(read,write,accept等等),进程可能阻塞,此时进程就阻塞在这个调用上,不能执行其他操作.阻塞很正常. 接下来考虑这么一个问题:一个服务器进程和一个客户端进程通信,服务器端read(sockfd1,bud,bufsize),此时客户端进程没有发送数据,那么read(阻塞调用)将阻塞直到客户端调用wr...
C基础 一个可以改变Linux的函数getch

C基础 一个可以改变Linux的函数getch

引言 - getch简述引用老的TC版本getch说明. (文章介绍点有点窄, 应用点都是一些恐龙游戏时代的开发细节)#include <conio.h>/* * 立即从客户端得到输入的字符. 出错返回EOF */int __cdecl getch(void);记得三年之前看过一本书 <<C专家编程>> 有一章提到在立即从标准输入中得到输入字符(后面还介绍了一种linux实现, 对于现在linux版本不行了)。C专家编程...
在Ubuntu 12.04下编译ijkplayer-android

在Ubuntu 12.04下编译ijkplayer-android

在Ubuntu下编译ijkplayer-Android我前面在Windows的cygwin中去编译,那真是各种坑啊,软链接无法识别,x86和86_64的so文件无法编译出来等等,我折腾了几天还是没有在cygwin中完美编译ijkplayer,今天我用了一下同事的Ubuntu的电脑,变异ijkplayer-android真的是很快,很快的。1.前提:下面是官方的提示:# install homebrew, git, yasmruby -e "$(curl -...
深入理解Android View 生命周期

深入理解Android View 生命周期

作为自定义 View 的基础,如果不了解Android View 的生命周期 , 那么你将会在后期的维护中发现这样那样的问题 .......做过一段时间Android 开发的同学都知道,一般 onXXX 函数都是系统的回调函数。而这篇文章也是基于这个思想(或许有点笨)......首先来看三分 创建view 的 日志信息 (自定义View 配置到xml文件中):android:visibility=gone03-25 19:56:55.934: D/yyyy...
<< 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 >>