常⻅的双指针有两种形式:
1 对撞指针(左右指针):
a 对撞指针从两端向中间移动。⼀个指针从最左端开始,另⼀个从最右端开始,然后逐渐往中间逼
近
b 终止条件一般是两指针相遇or错过(也可能在循环过程中找到结果直接跳出循环),即
left == right (两个指针指向同⼀个位置)
left > right (两个指针错开)
2 快慢指针:
使⽤两个移动速度不同的指针在数组或链表等结构上移动
特别是处理环形链表或数组时有很大用处,也就是说当问题出现循环往复的情况时,可考虑使用快慢指针的思想
给定一个数组 ,编写一个函数将所有 移动到数组的末尾,同时保持非零元素的相对顺序。nums
0
请注意 ,必须在不复制数组的情况下原地对数组进行操作。
示例 1:
输入: nums = [0,1,0,3,12]
输出: [1,3,12,0,0]
示例 2:
输入: nums = [0]
输出: [0]
class Solution
{
public:
void moveZeroes(vector& nums)
{
int cur = 0;//遍历数组
int pre = -1;//指向非0元素区域中最后一个非0元素
while(cur
思路详解:
题目要求实现的功能,可以说是数组划分(数组分块)让非0元素排在前半部分,0元素排在后半部分,且要求元素间的相对顺序保持不变。
方法:
前后指针法
(此处的指针是用数组的下标来充当的,并不是真正意义上的指针)
1 cur指针去从左向右遍历数组(只需要一直向前走就行)指向的是待处理的元素
2 pre指针记录已处理区间内的非0元素区域,最后一个非0元素的下标
cur初始化为0,因为要从0下标开始遍历
pre初始化为-1,因为pre指向的是已处理区间中的非0元素区的最后一个非0元素下标,刚开始还没有确定任何一个元素是否是非0元素
思想:
cur负责遍历数组,指向待处理的元素:
找到的是非0元素,则将它交换到前面
找到的是0元素,则视而不见,直接++走向下一个待处理元素
pre指向的始终是已处理区间中的非0元素区的最后一个非0元素的下标,cur因为遇到0而不断++,与pre拉开距离
那么[pre+1,cur-1]的区间是已处理区间中的0元素区
在处理过程中,数据分三区:
[0,pre]:全都是非0元素
[pre+1,cur-1]:全是0元素
[cur,n-1]:n是数组元素个数,是待处理的元素
简单来说,就是cur在遍历过程中若是遇到非0元素,则将它与0元素交换,让非0元素换到前面,0元素换到后面,[pre+1,cur-1]的区域内全是0元素,遇到0元素则不管,直接++找下一个待处理元素

完结撒花~
题外话:解决此题目的前后指针法其实和快排中实现数组划分的方法之一类似,也可以成之为前后指针法,但是实现略有差异,且在实现后,快排中数组元素的相对顺序可能会发生改变
详情在我的另一篇快排模拟实现的博客中:
http://t.csdn.cn/2Km96
你可能感兴趣的:(算法合集,算法)
- 几种AI模型在算法工作中的使用测评——Grok3,Deepseek,Chatgpt,Kimi,Claude(持续更新)
不断学习加努力
算法ai
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、Grok3二、Deepseek-R1三、Chatgpt-4o四、Kimi五、Claude-3.5总结前言在工作中现在已经离不开这AI模型了。于是我单开一个博客,记录在使用过程中的这几种模型使用感受。大家的感受也可以在评论区畅所欲言,我会抽空放进博客中。当然ai编程主要用的还是cluade3.5.一、Grok3嘿嘿,最吸
- 【造个轮子】使用Golang实现简易令牌桶算法
Golinie
#造个轮子golanggopher令牌桶算法
本文目录1.令牌桶算法2.调用第三方库实现令牌桶3.手撕令牌桶前言:之前在Bluebell社区项目中,我们使用了开源的库来实现令牌桶限流,这次我们试着使用Go来手撕实现下令牌桶算法。1.令牌桶算法为了防止网络拥塞,需要限制流出或者流入网络的流量,使流量以比较均匀的速度向外发送。令牌桶算法就实现了这个功能,可控制发送到网络上数据的数目,并允许突发数据的发送。令牌桶算法是网络流量整形和速率限制中最常使
- python 推荐算法库_[译] 详解个性化推荐五大最常用算法
weixin_39612733
python推荐算法库
允中若朴编译自Stats&Bots量子位出品|公众号QbitAI推荐系统,是当今互联网背后的无名英雄。我们在某宝首页看见的商品,某条上读到的新闻,甚至在各种地方看见的广告,都有赖于它。昨天,一个名为Stats&Bots的博客详解了构建推荐系统的五种方法。量子位编译如下:现在,许多公司都在用大数据来向用户进行相关推荐,驱动收入增长。推荐算法有很多种,数据科学家需要根据业务的限制和要求选择最好的算法。
- 项目经验之LZO压缩?思维导图 代码示例(java 架构)
用心去追梦
java架构开发语言
LZO(LightweightZip/Unzip)是一种高效的压缩算法,它以快速解压缩著称,适用于需要频繁读取和处理的数据。在Hadoop生态系统中,使用LZO压缩可以显著减少存储空间,并且由于其快速的解压速度,对于大规模数据处理任务来说是非常有利的。以下是关于LZO压缩的项目经验总结、思维导图描述以及Java代码示例。项目经验之LZO压缩LZO的优势快速解压:LZO算法设计时优先考虑了解压速度,
- tofixed和math.round什么区别
hdufu123
前端javascript开发语言
1、floor返回不大于的最大整数(向下取整)2、round则是4舍5入的计算,入的时候是到大于它的整数(当-1.5时可见,四舍五入后得到的结果不是我们期待的,解决办法是先对他取绝对值,然后在用round方法)round方法,它表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下取整,所以,Math.round(11.5)的结果为12,Math.round(
- 计算机复试面试题总结
m0_67400972
面试学习路线阿里巴巴android前端后端
时隔两年,重新完善一下以前写的东西:更新!!!!1.c++,408,设计模式,编程技巧,开源框架(适合cpp后端开发)2.数据结构与算法面试题3.c++与STL面试题4.计算机网络面试题面试问题之编程语言1。C++的特点是什么?封装,继承,多态。支持面向对象和面向过程的开发。2.C++的异常处理机制?抛出异常和捕捉异常进行处理。(实际开发)3.c和c++,java的区别c是纯过程,c++是对象加过
- ⭐算法OJ⭐矩阵的相关操作【深度优先搜索 DFS + 回溯】(C++ 实现)Unique Paths 系列
Vitalia
C/C++算法OJ算法矩阵深度优先
980.UniquePathsIIIYouaregivenanmxnintegerarraygridwheregrid[i][j]couldbe:1representingthestartingsquare.Thereisexactlyonestartingsquare.2representingtheendingsquare.Thereisexactlyoneendingsquare.0repr
- 数据库必知必会系列:数据库分片与分布式事务
AI天才研究院
AI大模型企业级应用开发实战大数据人工智能语言模型JavaPython架构设计
文章目录1.背景介绍分库分表分片集群分布式事务数据迁移2.核心概念与联系主从复制活动复制CAP原则BASE理论3.核心算法原理和具体操作步骤以及数学模型公式详细讲解分库分表水平分表垂直分库分片集群垂直拆分水平切分垂直切分水平拆分根据主键范围根据业务字段划分分布式事务两阶段提交协议三阶段提交协议可靠消息最终一致性ACID四要素4.具体代码实例和详细解释说明MyCat配置文件server.xml文件s
- GitHub每日最火火火项目(2.28)
FutureUniant
github日推github人工智能计算机视觉音视频ai
olmocr项目介绍:olmocr是由allenai开发的一款用于将PDF文件线性化,以适配大语言模型(LLM)数据集和训练的工具包。在大语言模型的训练过程中,数据的格式和预处理极为关键。PDF文件作为常见的数据来源,其内部复杂的排版和结构使得其中的文本信息难以直接被模型有效利用。olmocr通过一系列的技术和算法,对PDF文件进行处理,将其中的文本内容按照合适的顺序和格式提取出来,转化为线性的、
- DP算法问题写这些题就够了 198. 打家劫舍II 【第二题】
迪小莫学AI
DP算法入门刷题题单题解算法
213.打家劫舍II题目描述你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金。这个地方所有的房屋都围成一圈,这意味着第一个房屋和最后一个房屋是紧挨着的。同时,相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,今晚能够偷窃到的最高金额。示例示例1:输入:nums=[2,
- lower_bound详解
程序媛9688
算法
lower_bound是C++标准模板库(STL)中的一个算法,用于在有序区间中查找第一个大于或等于给定值的元素的位置。这个函数非常有用,特别是当我们需要在有序数据集中进行二分查找时。下面是对lower_bound函数的详细讲解,包括其用法、原理、实现细节以及示例。1.函数原型lower_bound函数的原型如下:cpptemplateForwardItlower_bound(ForwardItf
- HJ48 从单向链表中删除指定值的节点
张紫娃
算法题链表数据结构java
牛客华为机试题库【题号HJ开头】(重点看)牛客在线编程算法篇【题号NC开头】剑指offer【题号JZ开头】力扣1)原题链接2)已有题解3)代码packagelinklist;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.util.Arrays;/**
- 如果GPT-4还只是阿米巴原虫,未来的霸王龙会是什么样?| 赫拉利《智人之上》
量子位
关注前沿科技量子位几乎所有人都已经发现,我们正生活在一场前所未有的信息革命之中。但这到底是一场怎样的革命?最近这几年,太多突破性的发明如洪水般滚滚而来,以至于我们很难判断到底是什么推动了这场革命。是互联网?智能手机?社交媒体?区块链?算法?还是人工智能?所以,在讨论目前这场信息革命的长期影响之前,让我们先回顾一下它的基础。本文分为三大部分,分别为:我们真的了解计算机吗?计算机正在塑造一个全新的信息
- Linklist Merge Sort(微软等面试一百题-链表排序)代码
文西
算法C++merge面试微软null算法
因为自己写程序栽在这个问题上了,所以就手写+机试的敲了一下,虽然很小心,但是机试的时候依然写出了bug,所以发这篇帖子算是让自己长长记性吧。问题如下:1.编写实现链表排序的一种算法。说明为什么你会选择用这样的方法代码如下:#include#includestructLinkNode{intdata;LinkNode*pNext;LinkNode(int_data){data=_data;pNext
- 力扣热题 100:哈希专题三道题详细解析(JAVA)
剑走偏锋o.O
leetcode哈希算法java
文章目录一、两数之和1.题目描述2.示例3.解题思路4.代码实现(Java)5.复杂度分析二、字母异位词分组1.题目描述2.示例3.解题思路4.代码实现(Java)5.复杂度分析三、最长连续序列1.题目描述2.示例3.解题思路4.代码实现(Java)5.复杂度分析在力扣(LeetCode)平台上,热题100是许多开发者提升算法能力的必刷清单。今天,我们就来详细解析热题100中与哈希相关的三道题,帮
- STM32F103C8T6 基于 TB6612 驱动 12V 编码电机的教程
与光同尘 大道至简
单片机嵌入式硬件
本文将详细介绍如何使用STM32F103C8T6微控制器,通过TB6612双电机驱动芯片驱动12V直流编码电机。我们将采用标准PWM调速方式,并利用PID控制算法实现电机转速和位置的闭环控制。教程内容从基础原理开始,逐步涵盖硬件连接、开发环境配置、驱动代码实现、PID控制算法以及完整实例代码,最后提供调试与优化的建议。即使是零基础的读者,通过本教程也能逐步掌握相关知识和实现方法。1.基础知识在开始
- 2025 AI展望:Scaling Law新叙事加速AI变革
阿里巴巴淘系技术团队官网博客
人工智能
我们正身处一场技术革命的历史开端,以ChatGPT为标志的这轮AI科技浪潮是算法和软件诞生以来人类科技最重要的技术变革,由此开启了以智能为核心的第四次工业革命。这次AI变革是由以ScalingLaw为底层逻辑的基础模型驱动,其整体的发展脉络由基础模型的技术逻辑主导。进入2025年,我们清晰地看到,ScalingLaw本身仍然成立,但以堆算力以及一味追求扩大模型尺寸的迭代路径已经被打破。同时,基础模
- 【数据结构】 最大最小堆实现优先队列 python
查理零世
数据结构python
堆的定义堆(Heap)是一种特殊的完全二叉树结构,通常分为最大堆和最小堆两种类型。在最大堆中,父节点的值总是大于或等于其子节点的值;而在最小堆中,父节点的值总是小于或等于其子节点的值。堆常用于实现优先队列,在许多算法中也有重要应用,比如堆排序、Dijkstra算法等。堆的基本操作插入:向堆中添加一个新元素,并调整堆以保持其性质。删除:移除堆顶元素(最大或最小元素),并重新调整堆。获取最大/最小元素
- 使用YOLOv8训练自己的数据集:详细教程
zru_9602
人工智能YOLO
使用YOLOv8训练自己的数据集:详细教程引言YOLOv8是Ultralytics团队开发的新一代目标检测算法,以其高效的性能和简洁的API而闻名。本文将详细介绍如何使用YOLOv8训练自己的数据集,包括数据准备、模型配置、训练过程以及结果分析。1.环境搭建在开始训练之前,请确保已经安装了必要的依赖项:#安装ultralytics和其他依赖pipinstallultralytics==8.0.25
- AI基建狂魔!DeepSeek五天开源5大杀器实测:训练成本砍半+推理速度起飞,算法圈已疯(附删库跑路教程)
AI仙人掌
人工智能深度学习人工智能大模型算法开源
DeepSeek开源周「王炸」连发!FlashMLA让推理速度飙升40%,DeepEP根治MoE通信癌,FP8核弹库DeepGEMM暴力提效,DualPipe+EPLB把GPU榨到一滴不剩,3FS化身数据闪电侠!算法圈惊呼:训练成本腰斩,AGI进度条拉爆!根本学不完,学不完速删祖传代码,GitHub星链已就位:https://github.com/deepseek-aiDay1:FlashMLA(
- 一个游戏程序员的学习资料【转载】
Snail -Bernoulli
游戏程序员游戏程序员成长路线
想起写这篇文章是在看侯杰先生的《深入浅出MFC》时,突然觉得自己在大学这几年关于游戏编程方面还算是有些心得,因此写出这篇小文,介绍我眼中的游戏程序员的书单与源代码参考。一则是作为自己今后两年学习目标的备忘录,二来没准对别人也有点参考价值。我的原则是只写自己研究过或准备研究的资料,所以内容无疑会带上强烈的个人喜好色彩,比如对网络,数据库等重要方面完全没有涉及。因为自己主要对三维图形引擎,人工智能算法
- 智能算法解决方案 赋能农业套餐新模式-聚农拼平台
Neozsvc
人工智能后端
聚农拼平台套餐智能算法助力组合新模式在农业数字化转型的进程中,套餐商品的使用依靠创新的组合模式和智能算法,为托管农户、半托管农户以及村集体等用户提供了高效、精准的农业投入提供了智能的解决方案。这一功能不仅优化了农资商品和农服商品的配置,还通过智能算法实现了产品使用率的最大化和费用的最低化,为用户带来了实实在在的效益。一、套餐功能聚农拼平台的套餐功能分为可选套餐和必选套餐,其中必选套餐包含了多种农资
- 用DeepSeek-API构建智能工作流的5大范式革新
deepseek程序员
在AI原生时代,工作流引擎正从「规则执行者」向「智能决策中枢」进化。通过研究DeepSeek-API发现,可以为工作流引擎提供以下前沿实践方案:范式一:动态决策路由系统▍理念革新传统局限:固定审批路径无法应对复杂业务场景,人工判断耗时且标准不统一智能突破:基于DeepSeek-API的自然语言理解能力,实时解析单据内容语义结合流程拓扑算法,动态生成最优审批路径实践场景:金融信贷场景:自动识别高风险
- 【合集】临时邮箱网站 临时邮箱API(持续更新)
流情
工具学习phpphp
众所周知,在注册一些账户时,比较常见的验证方式就是邮箱,但是在进行一些小众和不知名网站注册时,邮箱的泄露可能预示着不休止的邮件推送。尤其是当我们只是想临时使用邮箱这种情况,第二种,批量注册账号的情况。在这两业务需求之下。我们开始另辟蹊径,临时邮箱成了我们此刻的不二选择。1.十分钟邮箱网站临时邮箱有时也叫10分钟邮箱,寓意着短暂和时效性,当然,作为一次性用品。我们也不用去关注历史数据的找回,能解我们
- 2025智能系统工程-中国人工智能系列白皮书报告200+份汇总解读|附PDF下载
数据挖掘深度学习人工智能算法
原文链接:https://tecdat.cn/?p=40836在当今科技飞速发展的时代,人工智能正以前所未有的速度渗透到各个行业,深刻改变着人们的生活与工作方式。本报告汇总解读聚焦智能系统工程这一前沿领域,深入剖析其发展现状、关键技术、应用实践及未来趋势。本报告汇总洞察基于文末269份人工智能行业研究报告的数据,报告合集已分享在交流群,阅读原文进群和500+行业人士共同交流和成长。报告首先对智能系
- 华为OD机试真题---开心消消乐
努力努力再努力呐
java算法数据结构华为od算法java开发语言数据结构
华为OD机试真题“开心消消乐”是一道有趣的算法题,主要考察的是对二维矩阵的遍历和深度优先搜索(DFS)算法的应用。以下是对这道题的详细解析:一、题目描述给定一个N行M列的二维矩阵,矩阵中每个位置的数字取值为0或1。现需要将矩阵中所有的1进行反转为0,规则如下:当点击一个1时,该1被反转为0,同时相邻的上、下、左、右,以及左上、左下、右上、右下8个方向的1(如果存在)均会自动反转为0。进一步地,一个
- 清华大学发布最新版DeepSeek学习教程,完整版pdf合集,速收藏。
大器晚成667
pdf人工智能深度学习学习AI写作
资料链接:https://pan.quark.cn/s/bb6ebf0e9b4d前日,清华发布的《DeepSeek从入门到精通》长达104页,还没学完,清华大学又发布了几个重磅教程!清华大学《DeepSeek+DeepResearch:让科研像聊天一样简单》,《普通人如何抓住DeepSeek红利》,《DeepSeek如何赋能职场应用》等等,这些教程将学习的受众群体从新手小白扩展到了科研人员,职场人
- 目标检测YOLO实战应用案例100讲-面向无人机图像的小目标检测
林聪木
无人机目标检测人工智能
目录知识储备YOLOv8无人机拍摄视角小目标检测数据集结构环境部署说明安装依赖模型训练权重和指标可视化展示训练YOLOv8PyQt5GUI开发主窗口代码main_window.py使用说明无人机目标跟踪一、目标跟踪的基本原理二、常用的目标跟踪算法基于YOLOv8+图像分割优化关键优化策略(基于VisDrone数据集实验验证)1.模型结构改进2.数据增强策略3.后处理优化4.训练技巧三、性能优化建议
- 基于深度学习的SSD口罩识别项目完整资料版(视频教程+课件+源码+数据)
AI方案2025
深度学习人工智能
基于深度学习的SSD口罩识别项目完整资料版,包含视频教程、PPT课件和源码.01项目介绍.mp402SSD算法原理回顾.mp403数据集收集.mp404自定义数据集.mp405生成anchors.mp406展示anchors.mp407计算iou值.mp408计算target.mp409定义模型.mp410模型训练.mp411预测和总结.mp412ssd生成anchor源码编写.mp413计算of
- 【脑洞小剧场】零帧起手创业小公司之 前端程序员入职
Foyo Designer
技术职场小剧前端产品经理改行学it经验分享程序人生
产品UI为爱发电,老板远程指点江山,后端一来“粪”外感慨,前路漫漫共修远兮~点击此处查看脑洞小剧场合集https://blog.csdn.net/foyodesigner/category_12896948.html?fromshare=blogcolumn&sharetype=blogcolumn&sharerId=12896948&sharerefer=PC&sharesource=FoyoD
- mongodb3.03开启认证
21jhf
mongodb
下载了最新mongodb3.03版本,当使用--auth 参数命令行开启mongodb用户认证时遇到很多问题,现总结如下:
(百度上搜到的基本都是老版本的,看到db.addUser的就是,请忽略)
Windows下我做了一个bat文件,用来启动mongodb,命令行如下:
mongod --dbpath db\data --port 27017 --directoryperdb --logp
- 【Spark103】Task not serializable
bit1129
Serializable
Task not serializable是Spark开发过程最令人头疼的问题之一,这里记录下出现这个问题的两个实例,一个是自己遇到的,另一个是stackoverflow上看到。等有时间了再仔细探究出现Task not serialiazable的各种原因以及出现问题后如何快速定位问题的所在,至少目前阶段碰到此类问题,没有什么章法
1.
package spark.exampl
- 你所熟知的 LRU(最近最少使用)
dalan_123
java
关于LRU这个名词在很多地方或听说,或使用,接下来看下lru缓存回收的实现
1、大体的想法
a、查询出最近最晚使用的项
b、给最近的使用的项做标记
通过使用链表就可以完成这两个操作,关于最近最少使用的项只需要返回链表的尾部;标记最近使用的项,只需要将该项移除并放置到头部,那么难点就出现 你如何能够快速在链表定位对应的该项?
这时候多
- Javascript 跨域
周凡杨
JavaScriptjsonp跨域cross-domain
- linux下安装apache服务器
g21121
apache
安装apache
下载windows版本apache,下载地址:http://httpd.apache.org/download.cgi
1.windows下安装apache
Windows下安装apache比较简单,注意选择路径和端口即可,这里就不再赘述了。 2.linux下安装apache:
下载之后上传到linux的相关目录,这里指定为/home/apach
- FineReport的JS编辑框和URL地址栏语法简介
老A不折腾
finereportweb报表报表软件语法总结
JS编辑框:
1.FineReport的js。
作为一款BS产品,browser端的JavaScript是必不可少的。
FineReport中的js是已经调用了finereport.js的。
大家知道,预览报表时,报表servlet会将cpt模板转为html,在这个html的head头部中会引入FineReport的js,这个finereport.js中包含了许多内置的fun
- 根据STATUS信息对MySQL进行优化
墙头上一根草
status
mysql 查看当前正在执行的操作,即正在执行的sql语句的方法为:
show processlist 命令
mysql> show global status;可以列出MySQL服务器运行各种状态值,我个人较喜欢的用法是show status like '查询值%';一、慢查询mysql> show variab
- 我的spring学习笔记7-Spring的Bean配置文件给Bean定义别名
aijuans
Spring 3
本文介绍如何给Spring的Bean配置文件的Bean定义别名?
原始的
<bean id="business" class="onlyfun.caterpillar.device.Business">
<property name="writer">
<ref b
- 高性能mysql 之 性能剖析
annan211
性能mysqlmysql 性能剖析剖析
1 定义性能优化
mysql服务器性能,此处定义为 响应时间。
在解释性能优化之前,先来消除一个误解,很多人认为,性能优化就是降低cpu的利用率或者减少对资源的使用。
这是一个陷阱。
资源时用来消耗并用来工作的,所以有时候消耗更多的资源能够加快查询速度,保持cpu忙绿,这是必要的。很多时候发现
编译进了新版本的InnoDB之后,cpu利用率上升的很厉害,这并不
- 主外键和索引唯一性约束
百合不是茶
索引唯一性约束主外键约束联机删除
目标;第一步;创建两张表 用户表和文章表
第二步;发表文章
1,建表;
---用户表 BlogUsers
--userID唯一的
--userName
--pwd
--sex
create
- 线程的调度
bijian1013
java多线程thread线程的调度java多线程
1. Java提供一个线程调度程序来监控程序中启动后进入可运行状态的所有线程。线程调度程序按照线程的优先级决定应调度哪些线程来执行。
2. 多数线程的调度是抢占式的(即我想中断程序运行就中断,不需要和将被中断的程序协商)
a)
- 查看日志常用命令
bijian1013
linux命令unix
一.日志查找方法,可以用通配符查某台主机上的所有服务器grep "关键字" /wls/applogs/custom-*/error.log
二.查看日志常用命令1.grep '关键字' error.log:在error.log中搜索'关键字'2.grep -C10 '关键字' error.log:显示关键字前后10行记录3.grep '关键字' error.l
- 【持久化框架MyBatis3一】MyBatis版HelloWorld
bit1129
helloworld
MyBatis这个系列的文章,主要参考《Java Persistence with MyBatis 3》。
样例数据
本文以MySQL数据库为例,建立一个STUDENTS表,插入两条数据,然后进行单表的增删改查
CREATE TABLE STUDENTS
(
stud_id int(11) NOT NULL AUTO_INCREMENT,
- 【Hadoop十五】Hadoop Counter
bit1129
hadoop
1. 只有Map任务的Map Reduce Job
File System Counters
FILE: Number of bytes read=3629530
FILE: Number of bytes written=98312
FILE: Number of read operations=0
FILE: Number of lar
- 解决Tomcat数据连接池无法释放
ronin47
tomcat 连接池 优化
近段时间,公司的检测中心报表系统(SMC)的开发人员时不时找到我,说用户老是出现无法登录的情况。前些日子因为手头上 有Jboss集群的测试工作,发现用户不能登录时,都是在Tomcat中将这个项目Reload一下就好了,不过只是治标而已,因为大概几个小时之后又会 再次出现无法登录的情况。
今天上午,开发人员小毛又找到我,要我协助将这个问题根治一下,拖太久用户难保不投诉。
简单分析了一
- java-75-二叉树两结点的最低共同父结点
bylijinnan
java
import java.util.LinkedList;
import java.util.List;
import ljn.help.*;
public class BTreeLowestParentOfTwoNodes {
public static void main(String[] args) {
/*
* node data is stored in
- 行业垂直搜索引擎网页抓取项目
carlwu
LuceneNutchHeritrixSolr
公司有一个搜索引擎项目,希望各路高人有空来帮忙指导,谢谢!
这是详细需求:
(1) 通过提供的网站地址(大概100-200个网站),网页抓取程序能不断抓取网页和其它类型的文件(如Excel、PDF、Word、ppt及zip类型),并且程序能够根据事先提供的规则,过滤掉不相干的下载内容。
(2) 程序能够搜索这些抓取的内容,并能对这些抓取文件按照油田名进行分类,然后放到服务器不同的目录中。
- [通讯与服务]在总带宽资源没有大幅增加之前,不适宜大幅度降低资费
comsci
资源
降低通讯服务资费,就意味着有更多的用户进入,就意味着通讯服务提供商要接待和服务更多的用户,在总体运维成本没有由于技术升级而大幅下降的情况下,这种降低资费的行为将导致每个用户的平均带宽不断下降,而享受到的服务质量也在下降,这对用户和服务商都是不利的。。。。。。。。
&nbs
- Java时区转换及时间格式
Cwind
java
本文介绍Java API 中 Date, Calendar, TimeZone和DateFormat的使用,以及不同时区时间相互转化的方法和原理。
问题描述:
向处于不同时区的服务器发请求时需要考虑时区转换的问题。譬如,服务器位于东八区(北京时间,GMT+8:00),而身处东四区的用户想要查询当天的销售记录。则需把东四区的“今天”这个时间范围转换为服务器所在时区的时间范围。
- readonly,只读,不可用
dashuaifu
jsjspdisablereadOnlyreadOnly
readOnly 和 readonly 不同,在做js开发时一定要注意函数大小写和jsp黄线的警告!!!我就经历过这么一件事:
使用readOnly在某些浏览器或同一浏览器不同版本有的可以实现“只读”功能,有的就不行,而且函数readOnly有黄线警告!!!就这样被折磨了不短时间!!!(期间使用过disable函数,但是发现disable函数之后后台接收不到前台的的数据!!!)
- LABjs、RequireJS、SeaJS 介绍
dcj3sjt126com
jsWeb
LABjs 的核心是 LAB(Loading and Blocking):Loading 指异步并行加载,Blocking 是指同步等待执行。LABjs 通过优雅的语法(script 和 wait)实现了这两大特性,核心价值是性能优化。LABjs 是一个文件加载器。RequireJS 和 SeaJS 则是模块加载器,倡导的是一种模块化开发理念,核心价值是让 JavaScript 的模块化开发变得更
- [应用结构]入口脚本
dcj3sjt126com
PHPyii2
入口脚本
入口脚本是应用启动流程中的第一环,一个应用(不管是网页应用还是控制台应用)只有一个入口脚本。终端用户的请求通过入口脚本实例化应用并将将请求转发到应用。
Web 应用的入口脚本必须放在终端用户能够访问的目录下,通常命名为 index.php,也可以使用 Web 服务器能定位到的其他名称。
控制台应用的入口脚本一般在应用根目录下命名为 yii(后缀为.php),该文
- haoop shell命令
eksliang
hadoophadoop shell
cat
chgrp
chmod
chown
copyFromLocal
copyToLocal
cp
du
dus
expunge
get
getmerge
ls
lsr
mkdir
movefromLocal
mv
put
rm
rmr
setrep
stat
tail
test
text
- MultiStateView不同的状态下显示不同的界面
gundumw100
android
只要将指定的view放在该控件里面,可以该view在不同的状态下显示不同的界面,这对ListView很有用,比如加载界面,空白界面,错误界面。而且这些见面由你指定布局,非常灵活。
PS:ListView虽然可以设置一个EmptyView,但使用起来不方便,不灵活,有点累赘。
<com.kennyc.view.MultiStateView xmlns:android=&qu
- jQuery实现页面内锚点平滑跳转
ini
JavaScripthtmljqueryhtml5css
平时我们做导航滚动到内容都是通过锚点来做,刷的一下就直接跳到内容了,没有一丝的滚动效果,而且 url 链接最后会有“小尾巴”,就像#keleyi,今天我就介绍一款 jquery 做的滚动的特效,既可以设置滚动速度,又可以在 url 链接上没有“小尾巴”。
效果体验:http://keleyi.com/keleyi/phtml/jqtexiao/37.htmHTML文件代码:
&
- kafka offset迁移
kane_xie
kafka
在早前的kafka版本中(0.8.0),offset是被存储在zookeeper中的。
到当前版本(0.8.2)为止,kafka同时支持offset存储在zookeeper和offset manager(broker)中。
从官方的说明来看,未来offset的zookeeper存储将会被弃用。因此现有的基于kafka的项目如果今后计划保持更新的话,可以考虑在合适
- android > 搭建 cordova 环境
mft8899
android
1 , 安装 node.js
http://nodejs.org
node -v 查看版本
2, 安装 npm
可以先从 https://github.com/isaacs/npm/tags 下载 源码 解压到
- java封装的比较器,比较是否全相同,获取不同字段名字
qifeifei
非常实用的java比较器,贴上代码:
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
i
- 记录一些函数用法
.Aky.
位运算PHP数据库函数IP
高手们照旧忽略。
想弄个全天朝IP段数据库,找了个今天最新更新的国内所有运营商IP段,copy到文件,用文件函数,字符串函数把玩下。分割出startIp和endIp这样格式写入.txt文件,直接用phpmyadmin导入.csv文件的形式导入。(生命在于折腾,也许你们觉得我傻X,直接下载人家弄好的导入不就可以,做自己的菜鸟,让别人去说吧)
当然用到了ip2long()函数把字符串转为整型数
- sublime text 3 rust
wudixiaotie
Sublime Text
1.sublime text 3 => install package => Rust
2.cd ~/.config/sublime-text-3/Packages
3.mkdir rust
4.git clone https://github.com/sp0/rust-style
5.cd rust-style
6.cargo build --release
7.ctrl