- Swift 解锁数组可修改场景:LeetCode 307 高效解法全解析
网罗开发
Swiftswiftleetcode开发语言
文章目录摘要描述题解答案(Swift实现–树状数组版)题解代码分析为什么选择树状数组?初始化和更新逻辑区间和查询示例测试及结果时间复杂度空间复杂度总结摘要在很多业务场景中,数据不仅要查询区间和,还会被实时修改。比如商城的库存系统、在线游戏中的积分榜,甚至是股票价格的区间统计。LeetCode第307题正是针对这种“可修改+可查询”场景设计的,它要求你设计一个数据结构支持快速更新数组中的某个位置,同
- 蓝桥杯刷题 Day5 线段树(树状数组)
雁于飞
蓝桥杯职场和发展学习笔记数据结构算法java
蓝桥杯刷题Day5线段树文章目录蓝桥杯刷题Day5线段树前言完整代码一、树状数组1.解题思路1.1问题抽象1.2核心思想1.2适用条件:1.3典型应用:2.拆解代码2.1主函数2.1.1输入以及初始化2.1.2处理查询2.2SegmentTree类2.2.1初始化数组以及最低有效位2.2.2单点更新与集区间求和二、题后收获3.1知识点前言今天写牛客网模板题中数据结构的线段树完整代码一、树状数组原题
- 树状数组 2
^O^凡人多烦事
数据结构
L-树状数组2洛谷-P3368Description如题,已知一个数列,你需要进行下面两种操作:将某区间每一个数加上x;求出某一个数的值。Input第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。接下来M行每行包含2或4个整数,表示一个操作,具体如下:操作1:格式:1xyk含义:将区间[x,y]内每个数加上k;
- 【算法笔记】树套树
PXM的算法星球
算法笔记算法笔记
一、前言在面对二维区间统计问题时,比如:查询某个一维区间中,大于某个值的数的个数对一个序列同时支持区间查询+单点修改我们常用的一维数据结构(如线段树、树状数组)往往显得力不从心。此时,我们可以考虑一种高效的数据结构组合:树套树。二、什么是树套树?“树套树”顾名思义,就是一棵树中的每个节点再套一棵树。最常见的树套树结构是:外层:线段树/树状数组,按照下标维护区间内层:平衡树(如STLmultiset
- 蓝桥杯康复训练 Day4 (前缀和)(树状数组)(线段树)
ooold_six
2022蓝桥杯java算法
昨天没状态摆了一天,今天复习一下各种区间问题前缀和常规遍历区间求和复杂度O(n)单点修改复杂度O(1)前缀和区间求和复杂度O(1)单点修改复杂度O(n)前缀和数组中每个值覆盖的是从开始到该点整个区间的和值求i~j的区间和值可以通过s[j]-s[i-1]计算可以扩展成二维三维的前缀和在单点修改时需要对所有覆盖该点的值进行修改在对区间求和复杂度要求高时使用蓝桥杯–前缀和1树状数组对比前缀和复杂度前缀和
- 每日刷题列表
天马流星1
c++
2024年学习内容或题目难度知识点11.61.BLO蓝割点与桥2.树状数组1黄树状数组3.树状数组2黄树状数组11.71.学习树状数组2.楼兰图腾绿树状数组3.树状数组3黄~绿区间修改区间查询11.81.基本学完树状数组2.迷失的牛绿树状数组3.学习离散化4.数列离散化普及-离散化11.101.洛谷基础赛写题加订题三道红橙黄2.负环黄负环与差分约束系统3.逆序对黄树状数组11.111.圆桌骑士紫割
- 《算法笔记》13.2小节——专题扩展->树状数组(BIT) 问题 A: 最少的交换
圣保罗的大教堂
《算法笔记》算法
题目描述现在给你一个由n个互不相同的整数组成的序列,现在要求你任意交换相邻的两个数字,使序列成为升序序列,请问最少的交换次数是多少?输入输入包含多组测试数据。每组输入第一行是一个正整数n(n#include#include#include#include#include#include#include#include#include#include#include#include#defineIN
- 《算法笔记》13.2小节——专题扩展->树状数组(BIT) 问题 C: Count Inversions
圣保罗的大教堂
《算法笔记》算法
题目描述给一个数组,算invertedpair的数目输入有多组测试样例。每组输入数据占一行,每一行是一个数组,数组之间的元素用空格分开输出每组输出结果占一行。对应于每组输入数据的inversions样例输入123213321样例输出013分析:给出一个数组,求逆序数。思路和A类似,同样用归并的方法做了。#include#include#include#include#include#include
- 【数据结构】: 树状数组 (Binary Indexed Trees)
ZONE画派
数据结构
树状数组(BinaryIndexedTrees)November15,2012作者:Hawstein出处:http://hawstein.com/posts/binary-indexed-trees.html声明:本文采用以下协议进行授权:自由转载-非商用-非衍生-保持署名|CreativeCommonsBY-NC-ND3.0,转载请注明作者及出处。前言本文翻译自TopCoder上的一篇文章:Bi
- 树状数组(Binary Indexed Trees)树状数组详解(转载)
u010793761
计算机以及程序语言学习
分类:数据结构树状数组树状数组(BinaryIndexedTrees)November15,2012作者:Hawstein出处:http://hawstein.com/posts/binary-indexed-trees.html声明:本文采用以下协议进行授权:自由转载-非商用-非衍生-保持署名|CreativeCommonsBY-NC-ND3.0,转载请注明作者及出处。topcoder上原英文链
- 树状数组
菜圾
树状数组杂记ACM树状数组
树状数组(BinaryIndexedTrees)November15,2012作者:Hawstein出处:http://hawstein.com/posts/binary-indexed-trees.html声明:本文采用以下协议进行授权:自由转载-非商用-非衍生-保持署名|CreativeCommonsBY-NC-ND3.0,转载请注明作者及出处。前言本文翻译自TopCoder上的一篇文章:Bi
- USST新生训练赛3KLMN
Fighter_sky
题解C++acm
题解前言题解部分KPashmakandParmida'sproblem(1800)题目大意题解参考代码LPashmakandGraph(1900)题目大意题解参考代码MLuckyChains(1600)题目大意题解参考代码NManipulatingHistory(1600)题目大意题解参考代码前言KLMN是数据结构(线段树/树状数组)+dp+数论+结论唐题题解部分KPashmakandParmid
- 2025.2.15——1400
云青山水林
日常训练算法
2025.2.15——1400A1400B1400C1400------------------------------------------------思维+位运算+思维/数学A单独对一个数进行分析什么情况下会有贡献。在前面且所有比其小的数,都必须是最小前缀。两个树状数组记录小的个数和最小前缀的个数。遍历维护信息可以做到不使用树状数组(思维点)。B模拟发现可以获得所有区间异或和。但没有证明只能
- 周练回顾(5)
-珂朵莉-
算法数据结构c++
这个周首先复习了暑假看的树状数组#definelowbit(x)((x)&-(x))voidadd(intx,intd)//初始化(或更改树状数组),如果想初始化那就是多次更改{while(x0){sum+=tree[x];x-=lowbit(x);}returnsum;}P1168中位数给出一段序列,要求对于每奇数个数就要求一次中位数,n最大有10的5次方。这个题首先想到的就是sort排序,但是
- 关于队里面最菜的在博客打卡第三十七天这件事
算法好难 TAT
算法数据结构线段树mex
传送门:很难想象一个非要暴力去解题人的精神状态这是一道神奇的题,题意是给你一个序列,然后问你这个序列是否可以用两个排列拼接而成,并且一左一右,如果可以的话有几种情况。问题十分的棘手(后来才发现只有3种结果),刚开始想用线段树或者树状数组去维护左右区间的数的个数,再判断数的多少和区间的大小,后来发现重复数据会出现很多问题,而且并且没有想到办法解决,于是突发奇想,好像区间的mex和区间的大小可以用来判
- [LeetCode] 树状数组+线段树总结
virgilshi
树状数组线段树LeetCode
文章目录写在前面线段树树桩数组相关题写在前面LeetCode树状数组+线段树的题比较少,而且这两个知识点在面试时被考察的概率极小,但是如果我们知道这两个知识点,在解题的时候会非常便捷(利用高维度工具打击低维度题目,解题所需的思维量会少很多),本文也是出于学习树状数组和线段树的目的写在这篇博客的。线段树线段树是二叉树形态的数据结构,用于存储和查询包含某个点的所有区间,时间复杂度为O(lgn+k),k
- 树状数组与线段树入门
Maximum_Mighty_X
c++
树状数组和线段树都是用于处理动态区间问题的数据结构。树状数组:支持区间加法的同时区间查询区间和,以及最值;线段树:支持区间加法的同时区间乘法的同时区间查询区间和,以及最值。线段树的适用范围相较于树状数组更加广泛,但树状数组相对于线段树简洁很多,且常数极小。树状数组树状数组的空间复杂度为O(n),时间上单次查询为O(logn)。首先我们需要知道这个定义:lowbit(x):表示x在二进制下从低位往高
- 算法复习(二分+离散化+快速排序+归并排序+树状数组)
一个人在码代码的章鱼
算法学习刷题算法c++数据结构
一、二分算法二分算法,堪称算法世界中的高效查找利器,其核心思想在于利用数据的有序性,通过不断将查找区间减半,快速定位目标元素或满足特定条件的位置。1.普通二分普通二分适用于在有序数组中查找特定元素的位置。我们可以进一步细分需求,如查找满足条件的最左边的数的下标,或者最右边的数的下标。以代码中的find1和find2函数为例:cpp#includeusingnamespacestd;constint
- (树状数组)洛谷 P6119/P3657 Why Did the Cow Cross the Road II G/P 题解
m0_60506105
题意FarmerJohn饲养了NNN种奶牛,编号从111到NNN。一些品种的奶牛和其他奶牛间相处良好,事实证明,如果两个品种的奶牛编号分别为a,ba,ba,b,当∣a−b∣≤4|a-b|\leq4∣a−b∣≤4时,这两个品种的奶牛能友好相处,否则不能友好相处。一条长长的道路贯穿整个农场,道路的左侧有NNN个牧场(每个品种的奶牛恰好占据一个牧场),道路的右侧也有NNN个牧场(每个品种的奶牛恰好占据一
- 牛客周赛 Round 82(思维、差分、树状数组、大根堆、前后缀、递归)
mldl_
算法
文章目录牛客周赛Round82(思维、差分、树状数组、大根堆、前后缀、递归)A.夹心饼干B.C.食堂大作战(思维)D.小苯的排列计数(差分、树状数组)E.和+和(大根堆,前缀和)F.怎么写线性SPJ(思维、递归)牛客周赛Round82(思维、差分、树状数组、大根堆、前后缀、递归)A.夹心饼干语法基础题#includeusingnamespacestd;intmain(){strings;cin>>
- 蓝桥杯python组备赛(记录个人模板)
潇湘夜雨697
算法专项蓝桥杯python
文章目录栈队列堆递归装饰器并查集树状数组线段树最近公共祖先LCAST表字典树KMPmanacher跳表(代替C++STL的set)dijkstra总结栈用list代替队列用deque双端队列替代堆用heapq递归装饰器众所周知,python的递归深度只有1000,根本满足不了大部分1e5以上的数据,当然你可以使用sys.setrecursionlimit(1000000)扩到1e6,但是这会增加空
- 算法整理 & 复习
SP FA
数据结构与算法c++算法数据结构
搬自hzwer文章目录一、基本数据结构1.数组2.链表、双向链表3.队列、单调队列、双端队列4.栈、单调栈5.前缀和、差分二、中级数据结构1.堆2.并查集、带权并查集3.哈希、哈希冲突三、高级数据结构1.树状数组2.线段树、线段树合并3.平衡树3.1Treap随机平衡二叉树3.2Splay伸展树3.3替罪羊树3.4红黑树4.块状数组、块状链表5.树套树5.1线段树套线段树5.2线段树套平衡树5.3
- 二维Fenwick树在数据处理中的实践应用
一键难忘
python算法开发语言二维Fenwick树
本文收录于专栏:算法之翼本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握!二维Fenwick树在数据处理中的实践应用Fenwick树(也称为树状数组)是一种高效的数据结构,用于处理前缀和与区间查询问题。相比于直接求解,Fenwick树可以在O(logn)时间复杂度内完成更新和查询操作。二维Fenwick树是该结构
- 树状数组、线段树 | P8613 [蓝桥杯 2014 省 B] 小朋友排队C++题解
一只一只
蓝桥杯c++算法
P8613[蓝桥杯2014省B]小朋友排队原题链接题目描述nnn个小朋友站成一排。现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友。每个小朋友都有一个不高兴的程度。开始的时候,所有小朋友的不高兴程度都是000。如果某个小朋友第一次被要求交换,则他的不高兴程度增加111,如果第二次要求他交换,则他的不高兴程度增加222(即不高兴程度为333),依次类推。当要求某个小朋友第k
- 常见算法模板(python)
雨拾
python算法深度优先
常见算法模板(python)二分搜索(实数搜索、整数搜索)前缀和、差分数组深度优先搜索DFS宽度优先搜索BFS并查集树状数组线段树稀疏表动态规划(矩阵)快速幂字符串匹配算法-KMPFloyd算法Dijkstra算法Bellman-Ford算法SPFA算法Prim算法Kruskal算法二分搜索(实数搜索、整数搜索)#-*-coding:utf-8-*-#@Author:BYW-yuwei#@Soft
- 区间信息操作之树状数组(Fenwick Tree)原理
xiaoyu❅
数据结构和算法#高级数据结构算法数据结构java
树状数组(FenwickTree)是一种高效处理前缀和与单点更新的数据结构,时间复杂度为O(logn),适用于动态维护数组的区间统计信息。本文将详细讲解树状数组的核心原理,并通过Java代码实现其核心功能。目录一、树状数组的核心思想1.什么是树状数组?2.核心原理:二进制索引与Lowbit操作二、树状数组的Java实现1.树状数组结构2.单点更新3.前缀和查询4.区间和查询三、应用示例1.动态维护
- C++ 树状数组
LIUJH1233
c++开发语言
一.树状数组是什么?二.树状数组的特性?可以解决大部分区间上面的修改以及查询的问题,例如1.单点修改,单点查询,2.区间修改,单点查询,3.区间查询,区间修改等问题;三.树状数组讲解lowbit的使用如何计算一个非负整数n在二进制下的最低为1及其后面的0构成的数?答案就是lowbit(x)。那么lowbit运算时怎么实现的呢?44的二进制=(101100),我们对44的二进制数取反+1,也即~44
- 牛客练习赛135——小柒的逆序对(2)
KyollBM
算法数据结构
这里还得说一下,调换一个排列中任意两个不同的数,该排列的逆序数奇偶会改变题目:思路:这道题的数据给的很大,如果我们用树状数组维护前缀和都没用,但是我们观察到英文字符只有26个,那我们可以开一个二维数组g[i][j]表示ij字符对有多少个如何维护这个数组呢,其实也很简单,遍历s每个字符c,同时开一个数组储存26个字符对于字符c,先遍历26个字符y,将g[y][c]加上y的个数,结束后再将c的数量加一
- 蓝桥杯常见算法模板(Python组)
-777.
蓝桥杯算法
目录1.二分1.整数二分(二分答案):2.浮点数二分(考不到)2.前缀和、差分1.前缀和一维:二维:2.差分一维:二维:3.贪心4.线性DP1.最长上升子序列(子序列问题一般下标从一开始)2.最长公共子序列3.常见背包模型1.0-1背包2.完全背包3.多重背包4.混合背包5.二维费用背包6.分组背包5.搜索1.DFS模板:1.子集问题2.全排列问题2.BFS6.数据结构1.并查集2.树状数组3.树
- HDU多校2019 第三场 1007(HDU 6609) Find the answer(离散化+树状数组)
沙雕.
2019HDU多校
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6609解题思路:先把给出来的值离散化,对于值相同位置不同的数离散化后的值不相同。两个树状数组,一个维护区间内的和,一个维护区间内的个数。对于每个i二分答案,找到右界之后询问第二个树状数组得到剩余的个数x,那么去掉的就是(i-1)-x代码:(注意行末空格)#include#include#include#
- jvm调优总结(从基本概念 到 深度优化)
oloz
javajvmjdk虚拟机应用服务器
JVM参数详解:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html
Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。
- 【Scala十六】Scala核心十:柯里化函数
bit1129
scala
本篇文章重点说明什么是函数柯里化,这个语法现象的背后动机是什么,有什么样的应用场景,以及与部分应用函数(Partial Applied Function)之间的联系 1. 什么是柯里化函数
A way to write functions with multiple parameter lists. For instance
def f(x: Int)(y: Int) is a
- HashMap
dalan_123
java
HashMap在java中对很多人来说都是熟的;基于hash表的map接口的非同步实现。允许使用null和null键;同时不能保证元素的顺序;也就是从来都不保证其中的元素的顺序恒久不变。
1、数据结构
在java中,最基本的数据结构无外乎:数组 和 引用(指针),所有的数据结构都可以用这两个来构造,HashMap也不例外,归根到底HashMap就是一个链表散列的数据
- Java Swing如何实时刷新JTextArea,以显示刚才加append的内容
周凡杨
java更新swingJTextArea
在代码中执行完textArea.append("message")后,如果你想让这个更新立刻显示在界面上而不是等swing的主线程返回后刷新,我们一般会在该语句后调用textArea.invalidate()和textArea.repaint()。
问题是这个方法并不能有任何效果,textArea的内容没有任何变化,这或许是swing的一个bug,有一个笨拙的办法可以实现
- servlet或struts的Action处理ajax请求
g21121
servlet
其实处理ajax的请求非常简单,直接看代码就行了:
//如果用的是struts
//HttpServletResponse response = ServletActionContext.getResponse();
// 设置输出为文字流
response.setContentType("text/plain");
// 设置字符集
res
- FineReport的公式编辑框的语法简介
老A不折腾
finereport公式总结
FINEREPORT用到公式的地方非常多,单元格(以=开头的便被解析为公式),条件显示,数据字典,报表填报属性值定义,图表标题,轴定义,页眉页脚,甚至单元格的其他属性中的鼠标悬浮提示内容都可以写公式。
简单的说下自己感觉的公式要注意的几个地方:
1.if语句语法刚接触感觉比较奇怪,if(条件式子,值1,值2),if可以嵌套,if(条件式子1,值1,if(条件式子2,值2,值3)
- linux mysql 数据库乱码的解决办法
墙头上一根草
linuxmysql数据库乱码
linux 上mysql数据库区分大小写的配置
lower_case_table_names=1 1-不区分大小写 0-区分大小写
修改/etc/my.cnf 具体的修改内容如下:
[client]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/va
- 我的spring学习笔记6-ApplicationContext实例化的参数兼容思想
aijuans
Spring 3
ApplicationContext能读取多个Bean定义文件,方法是:
ApplicationContext appContext = new ClassPathXmlApplicationContext(
new String[]{“bean-config1.xml”,“bean-config2.xml”,“bean-config3.xml”,“bean-config4.xml
- mysql 基准测试之sysbench
annan211
基准测试mysql基准测试MySQL测试sysbench
1 执行如下命令,安装sysbench-0.5:
tar xzvf sysbench-0.5.tar.gz
cd sysbench-0.5
chmod +x autogen.sh
./autogen.sh
./configure --with-mysql --with-mysql-includes=/usr/local/mysql
- sql的复杂查询使用案列与技巧
百合不是茶
oraclesql函数数据分页合并查询
本片博客使用的数据库表是oracle中的scott用户表;
------------------- 自然连接查询
查询 smith 的上司(两种方法)
&
- 深入学习Thread类
bijian1013
javathread多线程java多线程
一. 线程的名字
下面来看一下Thread类的name属性,它的类型是String。它其实就是线程的名字。在Thread类中,有String getName()和void setName(String)两个方法用来设置和获取这个属性的值。
同时,Thr
- JSON串转换成Map以及如何转换到对应的数据类型
bijian1013
javafastjsonnet.sf.json
在实际开发中,难免会碰到JSON串转换成Map的情况,下面来看看这方面的实例。另外,由于fastjson只支持JDK1.5及以上版本,因此在JDK1.4的项目中可以采用net.sf.json来处理。
一.fastjson实例
JsonUtil.java
package com.study;
impor
- 【RPC框架HttpInvoker一】HttpInvoker:Spring自带RPC框架
bit1129
spring
HttpInvoker是Spring原生的RPC调用框架,HttpInvoker同Burlap和Hessian一样,提供了一致的服务Exporter以及客户端的服务代理工厂Bean,这篇文章主要是复制粘贴了Hessian与Spring集成一文,【RPC框架Hessian四】Hessian与Spring集成
在
【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中
- 【Mahout二】基于Mahout CBayes算法的20newsgroup的脚本分析
bit1129
Mahout
#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information re
- nginx三种获取用户真实ip的方法
ronin47
随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能还加上了CDN加速,但是随之也遇到一个问题:nginx如何获取用户的真实IP地址,如果后端是apache,请跳转到<apache获取用户真实IP地址>,如果是后端真实服务器是nginx,那么继续往下看。
实例环境: 用户IP 120.22.11.11
- java-判断二叉树是不是平衡
bylijinnan
java
参考了
http://zhedahht.blog.163.com/blog/static/25411174201142733927831/
但是用java来实现有一个问题。
由于Java无法像C那样“传递参数的地址,函数返回时能得到参数的值”,唯有新建一个辅助类:AuxClass
import ljn.help.*;
public class BalancedBTree {
- BeanUtils.copyProperties VS PropertyUtils.copyProperties
诸葛不亮
PropertyUtilsBeanUtils
BeanUtils.copyProperties VS PropertyUtils.copyProperties
作为两个bean属性copy的工具类,他们被广泛使用,同时也很容易误用,给人造成困然;比如:昨天发现同事在使用BeanUtils.copyProperties copy有integer类型属性的bean时,没有考虑到会将null转换为0,而后面的业
- [金融与信息安全]最简单的数据结构最安全
comsci
数据结构
现在最流行的数据库的数据存储文件都具有复杂的文件头格式,用操作系统的记事本软件是无法正常浏览的,这样的情况会有什么问题呢?
从信息安全的角度来看,如果我们数据库系统仅仅把这种格式的数据文件做异地备份,如果相同版本的所有数据库管理系统都同时被攻击,那么
- vi区段删除
Cwind
linuxvi区段删除
区段删除是编辑和分析一些冗长的配置文件或日志文件时比较常用的操作。简记下vi区段删除要点备忘。
vi概述
引文中并未将末行模式单独列为一种模式。单不单列并不重要,能区分命令模式与末行模式即可。
vi区段删除步骤:
1. 在末行模式下使用:set nu显示行号
非必须,随光标移动vi右下角也会显示行号,能够正确找到并记录删除开始行
- 清除tomcat缓存的方法总结
dashuaifu
tomcat缓存
用tomcat容器,大家可能会发现这样的问题,修改jsp文件后,但用IE打开 依然是以前的Jsp的页面。
出现这种现象的原因主要是tomcat缓存的原因。
解决办法如下:
在jsp文件头加上
<meta http-equiv="Expires" content="0"> <meta http-equiv="kiben&qu
- 不要盲目的在项目中使用LESS CSS
dcj3sjt126com
Webless
如果你还不知道LESS CSS是什么东西,可以看一下这篇文章,是我一朋友写给新人看的《CSS——LESS》
不可否认,LESS CSS是个强大的工具,它弥补了css没有变量、无法运算等一些“先天缺陷”,但它似乎给我一种错觉,就是为了功能而实现功能。
比如它的引用功能
?
.rounded_corners{
- [入门]更上一层楼
dcj3sjt126com
PHPyii2
更上一层楼
通篇阅读完整个“入门”部分,你就完成了一个完整 Yii 应用的创建。在此过程中你学到了如何实现一些常用功能,例如通过 HTML 表单从用户那获取数据,从数据库中获取数据并以分页形式显示。你还学到了如何通过 Gii 去自动生成代码。使用 Gii 生成代码把 Web 开发中多数繁杂的过程转化为仅仅填写几个表单就行。
本章将介绍一些有助于更好使用 Yii 的资源:
- Apache HttpClient使用详解
eksliang
httpclienthttp协议
Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,而且也方便了开发人员测试接口(基于Http协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握HttpClient是很重要的必修内容,掌握HttpClient后,相信对于Http协议的了解会
- zxing二维码扫描功能
gundumw100
androidzxing
经常要用到二维码扫描功能
现给出示例代码
import com.google.zxing.WriterException;
import com.zxing.activity.CaptureActivity;
import com.zxing.encoding.EncodingHandler;
import android.app.Activity;
import an
- 纯HTML+CSS带说明的黄色导航菜单
ini
htmlWebhtml5csshovertree
HoverTree带说明的CSS菜单:纯HTML+CSS结构链接带说明的黄色导航
在线体验效果:http://hovertree.com/texiao/css/1.htm代码如下,保存到HTML文件可以看到效果:
<!DOCTYPE html >
<html >
<head>
<title>HoverTree
- fastjson初始化对性能的影响
kane_xie
fastjson序列化
之前在项目中序列化是用thrift,性能一般,而且需要用编译器生成新的类,在序列化和反序列化的时候感觉很繁琐,因此想转到json阵营。对比了jackson,gson等框架之后,决定用fastjson,为什么呢,因为看名字感觉很快。。。
网上的说法:
fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。
- 基于Mybatis封装的增删改查实现通用自动化sql
mengqingyu
DAO
1.基于map或javaBean的增删改查可实现不写dao接口和实现类以及xml,有效的提高开发速度。
2.支持自定义注解包括主键生成、列重复验证、列名、表名等
3.支持批量插入、批量更新、批量删除
<bean id="dynamicSqlSessionTemplate" class="com.mqy.mybatis.support.Dynamic
- js控制input输入框的方法封装(数字,中文,字母,浮点数等)
qifeifei
javascript js
在项目开发的时候,经常有一些输入框,控制输入的格式,而不是等输入好了再去检查格式,格式错了就报错,体验不好。 /** 数字,中文,字母,浮点数(+/-/.) 类型输入限制,只要在input标签上加上 jInput="number,chinese,alphabet,floating" 备注:floating属性只能单独用*/
funct
- java 计时器应用
tangqi609567707
javatimer
mport java.util.TimerTask; import java.util.Calendar; public class MyTask extends TimerTask { private static final int
- erlang输出调用栈信息
wudixiaotie
erlang
在erlang otp的开发中,如果调用第三方的应用,会有有些错误会不打印栈信息,因为有可能第三方应用会catch然后输出自己的错误信息,所以对排查bug有很大的阻碍,这样就要求我们自己打印调用的栈信息。用这个函数:erlang:process_display (self (), backtrace).需要注意这个函数只会输出到标准错误输出。
也可以用这个函数:erlang:get_s