- 时间复杂度分析-大O表示法
꧁꫞ND꫞꧂
算法与数据结构
开篇词|从今天起,跨过“数据结构与算法”这道坎你好,我是王争,毕业于西安交通大学计算机专业。现在回想起来,本科毕业的时候,我的编程水平其实是很差的。直到读研究生的时候,一个师兄给了我一本《算法导论》,说你可以看看,对你的编程会很有帮助。没想到,从此我对算法的“迷恋”便一发不可收拾。之后,我如饥似渴地把图书馆里几乎所有数据结构和算法书籍都读了一遍。我常常边读边练。没多久,我就发现,写代码的时候,我会
- 2025年6月文章一览
python
2025年6月编程人总共更新了3篇文章:1.2025年5月文章一览2.《算法导论(第4版)》阅读笔记:p175-p1813.《BuildingRESTAPIswithFlask》读后感本月在读3本,阅读完一本——《BuildingRESTAPIswithFlask》。读完《BuildingRESTAPIswithFlask》,有两点感受最深:一、学有所用是效果最好的。其实在2019年就接触了Mar
- 算法导论:动态规划-钢条切割
tttoff
算法动态规划
一、动态规划定义区别于分治法,动态规划(dynamicprogramming)的子问题是有重叠的。常用于最优化问题(optimizationproblem)。二、钢条切割问题2.1步骤分解(1)刻画最优解的结构特征如何得到最大的收益->切割or不切割->则最大收益可以由两个子方案组成,即最大收益=max(不切割的收益,切割的收益)(2)递归地定义最优解的值不切割的收益的已知,则需定义切割的收益。由
- 算法导论第十四章 B树与B+树:海量数据的守护者
W说编程
算法导论数据结构与算法算法b树c语言数据结构性能优化
第十四章B树与B+树:海量数据的守护者“数据不是信息,信息不是知识,知识不是理解。”——CliffordStoll在信息爆炸的时代,我们需要高效管理海量数据的能力。B树家族作为数据库和文件系统的基石,完美平衡了磁盘I/O效率和内存利用率,成为处理大规模数据的首选数据结构。14.1B树的诞生背景14.1.1磁盘与内存的速度鸿沟现代计算机系统中,磁盘访问速度比内存慢10万倍以上。当数据量超过内存容量时
- 算法导论第十八章 计算几何:算法中的空间艺术
第十八章计算几何:算法中的空间艺术“几何学是描绘宇宙秩序的永恒诗篇。”——约翰内斯·开普勒计算几何将数学的优雅与算法的实用性完美结合,在计算机图形学、机器人导航和地理信息系统中扮演着关键角色。本章将带您探索几何问题的算法解决方案,从基础的点线关系到复杂的空间剖分,揭示算法如何理解和操纵我们的几何世界。18.1几何基础:点、线和多边形18.1.1几何对象的表示在计算几何中,我们使用简洁的数学结构表示
- 算法导论第十六章 van Emde Boas树:对数对数的奇迹
W说编程
算法导论数据结构与算法算法数据结构c语言性能优化全文检索数据库
第十六章vanEmdeBoas树:对数对数的奇迹“在数据结构的宇宙中,有些星星的光芒需要特殊工具才能看见。”vanEmdeBoas树(vEB树)是计算机科学中最优雅的数据结构之一,它将整数集合操作的时间复杂度从O(logn)降到了惊人的O(loglogU)。本章将揭开这种神奇结构的面纱,展示它如何在小整数集合处理中实现近乎即时的操作。16.1vEB树的诞生:解决整数集合的瓶颈16.1.1整数集合操
- 算法导论第十三章 红黑树:平衡的艺术
W说编程
算法导论数据结构与算法算法c语言数据结构性能优化b树排序算法
第十三章红黑树:平衡的艺术“平衡不是静止,而是动态的和谐。”——达芬奇在二叉搜索树的世界中,红黑树如同一位优雅的舞者,在动态操作中保持着完美的平衡。本章将揭开这种高效数据结构的神秘面纱,探索它如何在插入和删除操作中保持优雅姿态。13.1红黑树的诞生:解决BST的致命缺陷13.1.1BST的退化问题在第十二章中,我们看到二叉搜索树在极端情况下会退化为链表,操作复杂度从O(logn)恶化为O(n)。1
- 算法导论第四章:分治策略的艺术与科学
W说编程
算法导论数据结构与算法算法数据结构c语言性能优化
算法导论第四章:分治策略的艺术与科学本文是《算法导论》精讲专栏第四章,通过问题分解可视化、递归树分析和数学证明,结合完整C语言实现,深入解析分治策略的精髓。包含最大子数组、矩阵乘法、最近点对等经典问题的完整实现与优化技巧。1.分治策略:化繁为简的智慧1.1分治法核心思想原问题分解子问题1子问题2子问题n解决合并最终解分治三步曲:分解:将问题划分为规模更小的子问题解决:递归解决子问题(基线条件直接求
- 算法导论第五章:概率分析与随机算法的艺术
W说编程
算法导论数据结构与算法算法数据结构c语言概率论
算法导论第五章:概率分析与随机算法的艺术本文是《算法导论》精讲专栏第五章,通过概率模型可视化、随机实验模拟和数学证明,结合完整C语言实现,深入解析概率分析与随机算法的精髓。包含生日悖论、赠券收集、随机快速排序、蓄水池抽样等经典问题的完整实现与数学分析。1.概率分析基础:从直觉到数学1.1生日悖论:违反直觉的概率问题:一个房间需要多少人,才能使其中两人生日相同的概率超过50%?#includedou
- 《算法导论(第4版)》阅读笔记:p175-p181
算法
《算法导论(第4版)》学习第31天,p175-p181总结,总计7页。一、技术总结无。二、英语总结(生词:1)1.amortize(1)amortize:a-("to")+mortus("dead")vt.amortizeoriginallymeans"tokilloff",overtime,itevolvestomean"topayoffgraduallybyperiodicpaymentsof
- [算法导论] 48.旋转图像(原地顺时针旋转90度)
心心喵
算法导论算法
0.题目1.两次翻转替代旋转classSolution:defrotate(self,matrix]):n=len(matrix)#水平翻转foriinrange(n//2):forjinrange(n):matrix[i][j],matrix[n-i-1][j]=matrix[n-i-1][j],matrix[i][j]#主对角线翻转foriinrange(n):forjinrange(i):m
- 材料力学优化算法:形状优化:形状优化算法导论_2024-08-08_11-42-05.Tex
chenjj4003
材料力学算法人工智能机器学习制造python开发语言性能优化
材料力学优化算法:形状优化:形状优化算法导论材料力学与优化的关系在工程设计中,材料力学是理解结构行为和性能的基础。它研究材料在不同载荷下的应力、应变和位移,为设计安全、高效和经济的结构提供理论依据。然而,传统的设计方法往往基于经验或初步假设,可能无法达到最优的设计方案。这时,优化算法,尤其是形状优化算法,就显得尤为重要。形状优化算法通过数学模型和计算方法,自动调整结构的形状,以满足特定的性能目标,
- 《算法导论(第4版)》阅读笔记:p162-p163
算法
《算法导论(第4版)》学习第28天,p162-p163总结,总计2页。一、技术总结1.heapsort(1)(binary)heap(堆/二叉堆)(2)completebinarytree(完全二叉树)(3)max-heap(最大堆)定义:A[PARENT(i)]≥A[i]。看了很多定义,不得不说还是这个定义最简洁,准确。(4)min-heap(最小堆)定义:A[PARENT(i)]≤A[i]。2
- 《算法导论(第4版)》阅读笔记:p134-p155
算法
《算法导论(第4版)》学习第26天,p134-p155总结,总计22页。一、技术总结无。二、英语总结(生词:1)1.paradox(1)paradox:para-("contraryto")+doxa("opinion")c/u.asituationthatcontainstwooppositefacts(悖论)。(2)示例"Thisstatementisfalse."isaparadox——If
- 《算法导论(第4版)》阅读笔记:p127-p133
codists
读书笔记算法
《算法导论(第4版)》学习第24天,p127-p133总结,总计7页。一、技术总结1.probabilisticanalysis(概率分析)(1)定义Probabilisticanalysisistheuseofprobabilityintheanalysisofproblems.2.randomizedalgorithm(1)定义Moregenerally,wecallanalgorithmra
- 《算法导论(第4版)》阅读笔记:p1178-p1212
算法
《算法导论(第4版)》学习第25天,p1178-p1212总结,总计35页。一、技术总结1.AppendixC:CountingandProbability附录C介绍了计数理论(如:和规则,积规则,串,排列,组合,二项式系数,二项式界等),概率理论(如:样本空间,事件,概率论公理,离散概率分布,连续均匀概率分布,贝叶斯定理等),几何分布与二项分布,二项分布的尾部探究。第5章会时不时的涉及这些内容,
- 《算法导论(第4版)》阅读笔记:p115-p126
算法
《算法导论(第4版)》学习第23天,p101-p114总结,总计14页。一、技术总结无。二、英语总结(生词:1)1.vagary(1)vagary:vagus("roving,wandering(闲逛)")c.originally,vagarymeansphysicalwandering,overtime,itevolvestodescribeunpredictablechanges(变幻莫测)。
- [算法导论] 73. 矩阵置零
心心喵
算法导论算法矩阵动态规划
0.题目矩阵中为0的元素,行列都置0。1.使用标记数组o(mn)o(m+n)classSolution:defsetZeroes(self,matrix):"""Donotreturnanything,modifymatrixin-placeinstead."""rows=[False]*(len(matrix))columns=[False]*(len(matrix[0]))#False:该行没
- 《算法导论(第4版)》阅读笔记:p101-p114
算法
《算法导论(第4版)》学习第22天,p101-p114总结,总计14页。一、技术总结1.themastertheorem(主定理)二、英语总结(生词:1)1.encompass(1)compass:com-("with,together")+passus("astep")compassliterallymeans"tosteptogether",reflectingtheideaofencircl
- 《算法导论(第4版)》阅读笔记:p95-p100
算法
《算法导论(第4版)》学习第21天,p95-p100总结,总计6页。一、技术总结无。二、英语总结(生词:1)1.intuition(1)intuit:in-("into")+tueri("tolookat,whatover,看")vt.tounderstandsomethingimmediatelybasedonyourfeelingratherthanfacts(凭直觉知道)。(2)intuit
- 《算法导论(第4版)》阅读笔记:p91-p94
算法
《算法导论(第4版)》学习第20天,p91-p94总结,总计4页。一、技术总结1.recursiontreeIngraphtheory,arecursivetree(i.e.,unorderedtree)isalabeled,rootedtree.Asize-nrecursivetree'sverticesarelabeledbydistinctpositiveintegers1,2,…,n,wh
- 《算法导论(第4版)》阅读笔记:p86-p90
算法
《算法导论(第4版)》学习第19天,p83-p85总结,总计3页。一、技术总结无。二、英语总结(生词:2)1.inkling(1)inkling:inclen("utterinanundertone,低声说话")c.ahint(提示);aslightknowledge(一点点知识,浅薄的认知,强调程度轻微,有限。翻译的时候转成动词翻译较好)。(2)示例Togetaninklinghowthenum
- 《算法导论(第4版)》阅读笔记:p59-p75
codists
读书笔记算法
《算法导论(第4版)》学习第15天,p59-p75总结,总计17页。一、技术总结1.floor(向下取整)andceiling(向上取整)Foranyrealnumberx,wedenotethegreatestintegerlessthanorequaltoxby⌊x⌋(read‘thefloorofx’)andtheleastintegergreaterthanorequaltoxby⌈x⌉(
- 《算法导论(第4版)》阅读笔记:p76-p81
codists
读书笔记算法
《算法导论(第4版)》学习第16天,p76-p81总结,总计7页。一、技术总结1.densematrix(密集矩阵)&sparsematrix(稀疏矩阵)、(1)定义Generally,we’llassumethatthematricesaredense,meaningthatmostofthen²entriesarenot0,asopposedtosparse,wheremostofthen²e
- 《算法导论(第4版)》阅读笔记:p82-p82
codists
读书笔记算法
《算法导论(第4版)》学习第17天,p82-p82总结,总计1页。一、技术总结1.MatrixMatrices(矩阵)(1)教材因为第4章涉及到矩阵,矩阵属于线性代数(linearalgebra)范畴,如果不熟悉,可以看一下作者推荐的两本教材:GilbertStrang的《IntroductiontoAppliedMathematics》和《LinearAlgebraandItsApplicati
- 《算法导论(第4版)》阅读笔记:p83-p85
算法
《算法导论(第4版)》学习第18天,p83-p85总结,总计3页。一、技术总结1.Strassenalgorithm(施特拉森算法)2.矩阵(1)矩阵表示法Ifwewishtorefertomatriceswithoutspecificallywritingoutalltheirentries,wewilluseuppercaseA,B,C,andsoon.Ingeneral,aᵢⱼwillden
- 《算法导论(第4版)》阅读笔记:p76-p81
算法
《算法导论(第4版)》学习第16天,p76-p81总结,总计7页。一、技术总结1.densematrix(密集矩阵)&sparsematrix(稀疏矩阵)、(1)定义Generally,we’llassumethatthematricesaredense,meaningthatmostofthen²entriesarenot0,asopposedtosparse,wheremostofthen²e
- 《算法导论(第4版)》阅读笔记:p59-p75
算法
《算法导论(第4版)》学习第15天,p59-p75总结,总计17页。一、技术总结1.floor(向下取整)andceiling(向上取整)Foranyrealnumberx,wedenotethegreatestintegerlessthanorequaltoxby⌊x⌋(read'thefloorofx')andtheleastintegergreaterthanorequaltoxby⌈x⌉(
- 《算法导论(第4版)》阅读笔记:p49-p58
算法
《算法导论(第4版)》学习第14天,p49-p58总结,总计10页。一、技术总结1.O-notation,Ω-notation,and‚Θ-notation(1)O-notationO-notationdescribesanasymptoticupperbound.(2)Ω-notationΩ-notationdescribesanasymptoticlowerbound.(3)Θ-notatio
- 《算法导论(第4版)》阅读笔记:p39-p48
算法
《算法导论(第4版)》学习第13天,p39-p48总结,总计10页。一、技术总结1.recurrence/recurrenceequation书里面recurrence(递归式)和recurrenceequation(递归方程)指的是同一个东西。二、英语总结(生词:2)1.squint(1)squintvi.lookaskance(斜视);lookatthingswitheyespartlyclo
- 基本数据类型和引用类型的初始值
3213213333332132
java基础
package com.array;
/**
* @Description 测试初始值
* @author FuJianyong
* 2015-1-22上午10:31:53
*/
public class ArrayTest {
ArrayTest at;
String str;
byte bt;
short s;
int i;
long
- 摘抄笔记--《编写高质量代码:改善Java程序的151个建议》
白糖_
高质量代码
记得3年前刚到公司,同桌同事见我无事可做就借我看《编写高质量代码:改善Java程序的151个建议》这本书,当时看了几页没上心就没研究了。到上个月在公司偶然看到,于是乎又找来看看,我的天,真是非常多的干货,对于我这种静不下心的人真是帮助莫大呀。
看完整本书,也记了不少笔记
- 【备忘】Django 常用命令及最佳实践
dongwei_6688
django
注意:本文基于 Django 1.8.2 版本
生成数据库迁移脚本(python 脚本)
python manage.py makemigrations polls
说明:polls 是你的应用名字,运行该命令时需要根据你的应用名字进行调整
查看该次迁移需要执行的 SQL 语句(只查看语句,并不应用到数据库上):
python manage.p
- 阶乘算法之一N! 末尾有多少个零
周凡杨
java算法阶乘面试效率
&n
- spring注入servlet
g21121
Spring注入
传统的配置方法是无法将bean或属性直接注入到servlet中的,配置代理servlet亦比较麻烦,这里其实有比较简单的方法,其实就是在servlet的init()方法中加入要注入的内容:
ServletContext application = getServletContext();
WebApplicationContext wac = WebApplicationContextUtil
- Jenkins 命令行操作说明文档
510888780
centos
假设Jenkins的URL为http://22.11.140.38:9080/jenkins/
基本的格式为
java
基本的格式为
java -jar jenkins-cli.jar [-s JENKINS_URL] command [options][args]
下面具体介绍各个命令的作用及基本使用方法
1. &nb
- UnicodeBlock检测中文用法
布衣凌宇
UnicodeBlock
/** * 判断输入的是汉字 */ public static boolean isChinese(char c) { Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
- java下实现调用oracle的存储过程和函数
aijuans
javaorale
1.创建表:STOCK_PRICES
2.插入测试数据:
3.建立一个返回游标:
PKG_PUB_UTILS
4.创建和存储过程:P_GET_PRICE
5.创建函数:
6.JAVA调用存储过程返回结果集
JDBCoracle10G_INVO
- Velocity Toolbox
antlove
模板toolboxvelocity
velocity.VelocityUtil
package velocity;
import org.apache.velocity.Template;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.c
- JAVA正则表达式匹配基础
百合不是茶
java正则表达式的匹配
正则表达式;提高程序的性能,简化代码,提高代码的可读性,简化对字符串的操作
正则表达式的用途;
字符串的匹配
字符串的分割
字符串的查找
字符串的替换
正则表达式的验证语法
[a] //[]表示这个字符只出现一次 ,[a] 表示a只出现一
- 是否使用EL表达式的配置
bijian1013
jspweb.xmlELEasyTemplate
今天在开发过程中发现一个细节问题,由于前端采用EasyTemplate模板方法实现数据展示,但老是不能正常显示出来。后来发现竟是EL将我的EasyTemplate的${...}解释执行了,导致我的模板不能正常展示后台数据。
网
- 精通Oracle10编程SQL(1-3)PLSQL基础
bijian1013
oracle数据库plsql
--只包含执行部分的PL/SQL块
--set serveroutput off
begin
dbms_output.put_line('Hello,everyone!');
end;
select * from emp;
--包含定义部分和执行部分的PL/SQL块
declare
v_ename varchar2(5);
begin
select
- 【Nginx三】Nginx作为反向代理服务器
bit1129
nginx
Nginx一个常用的功能是作为代理服务器。代理服务器通常完成如下的功能:
接受客户端请求
将请求转发给被代理的服务器
从被代理的服务器获得响应结果
把响应结果返回给客户端
实例
本文把Nginx配置成一个简单的代理服务器
对于静态的html和图片,直接从Nginx获取
对于动态的页面,例如JSP或者Servlet,Nginx则将请求转发给Res
- Plugin execution not covered by lifecycle configuration: org.apache.maven.plugin
blackproof
maven报错
转:http://stackoverflow.com/questions/6352208/how-to-solve-plugin-execution-not-covered-by-lifecycle-configuration-for-sprin
maven报错:
Plugin execution not covered by lifecycle configuration:
- 发布docker程序到marathon
ronin47
docker 发布应用
1 发布docker程序到marathon 1.1 搭建私有docker registry 1.1.1 安装docker regisry
docker pull docker-registry
docker run -t -p 5000:5000 docker-registry
下载docker镜像并发布到私有registry
docker pull consol/tomcat-8.0
- java-57-用两个栈实现队列&&用两个队列实现一个栈
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
import java.util.Stack;
/*
* Q 57 用两个栈实现队列
*/
public class QueueImplementByTwoStacks {
private Stack<Integer> stack1;
pr
- Nginx配置性能优化
cfyme
nginx
转载地址:http://blog.csdn.net/xifeijian/article/details/20956605
大多数的Nginx安装指南告诉你如下基础知识——通过apt-get安装,修改这里或那里的几行配置,好了,你已经有了一个Web服务器了。而且,在大多数情况下,一个常规安装的nginx对你的网站来说已经能很好地工作了。然而,如果你真的想挤压出Nginx的性能,你必
- [JAVA图形图像]JAVA体系需要稳扎稳打,逐步推进图像图形处理技术
comsci
java
对图形图像进行精确处理,需要大量的数学工具,即使是从底层硬件模拟层开始设计,也离不开大量的数学工具包,因为我认为,JAVA语言体系在图形图像处理模块上面的研发工作,需要从开发一些基础的,类似实时数学函数构造器和解析器的软件包入手,而不是急于利用第三方代码工具来实现一个不严格的图形图像处理软件......
&nb
- MonkeyRunner的使用
dai_lm
androidMonkeyRunner
要使用MonkeyRunner,就要学习使用Python,哎
先抄一段官方doc里的代码
作用是启动一个程序(应该是启动程序默认的Activity),然后按MENU键,并截屏
# Imports the monkeyrunner modules used by this program
from com.android.monkeyrunner import MonkeyRun
- Hadoop-- 海量文件的分布式计算处理方案
datamachine
mapreducehadoop分布式计算
csdn的一个关于hadoop的分布式处理方案,存档。
原帖:http://blog.csdn.net/calvinxiu/article/details/1506112。
Hadoop 是Google MapReduce的一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同ja
- 以資料庫驗證登入
dcj3sjt126com
yii
以資料庫驗證登入
由於 Yii 內定的原始框架程式, 採用綁定在UserIdentity.php 的 demo 與 admin 帳號密碼: public function authenticate() { $users=array( &nbs
- github做webhooks:[2]php版本自动触发更新
dcj3sjt126com
githubgitwebhooks
上次已经说过了如何在github控制面板做查看url的返回信息了。这次就到了直接贴钩子代码的时候了。
工具/原料
git
github
方法/步骤
在github的setting里面的webhooks里把我们的url地址填进去。
钩子更新的代码如下: error_reportin
- Eos开发常用表达式
蕃薯耀
Eos开发Eos入门Eos开发常用表达式
Eos开发常用表达式
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2014年8月18日 15:03:35 星期一
&
- SpringSecurity3.X--SpEL 表达式
hanqunfeng
SpringSecurity
使用 Spring 表达式语言配置访问控制,要实现这一功能的直接方式是在<http>配置元素上添加 use-expressions 属性:
<http auto-config="true" use-expressions="true">
这样就会在投票器中自动增加一个投票器:org.springframework
- Redis vs Memcache
IXHONG
redis
1. Redis中,并不是所有的数据都一直存储在内存中的,这是和Memcached相比一个最大的区别。
2. Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。
3. Redis支持数据的备份,即master-slave模式的数据备份。
4. Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
Red
- Python - 装饰器使用过程中的误区解读
kvhur
JavaScriptjqueryhtml5css
大家都知道装饰器是一个很著名的设计模式,经常被用于AOP(面向切面编程)的场景,较为经典的有插入日志,性能测试,事务处理,Web权限校验, Cache等。
原文链接:http://www.gbtags.com/gb/share/5563.htm
Python语言本身提供了装饰器语法(@),典型的装饰器实现如下:
@function_wrapper
de
- 架构师之mybatis-----update 带case when 针对多种情况更新
nannan408
case when
1.前言.
如题.
2. 代码.
<update id="batchUpdate" parameterType="java.util.List">
<foreach collection="list" item="list" index=&
- Algorithm算法视频教程
栏目记者
Algorithm算法
课程:Algorithm算法视频教程
百度网盘下载地址: http://pan.baidu.com/s/1qWFjjQW 密码: 2mji
程序写的好不好,还得看算法屌不屌!Algorithm算法博大精深。
一、课程内容:
课时1、算法的基本概念 + Sequential search
课时2、Binary search
课时3、Hash table
课时4、Algor
- C语言算法之冒泡排序
qiufeihu
c算法
任意输入10个数字由小到大进行排序。
代码:
#include <stdio.h>
int main()
{
int i,j,t,a[11]; /*定义变量及数组为基本类型*/
for(i = 1;i < 11;i++){
scanf("%d",&a[i]); /*从键盘中输入10个数*/
}
for
- JSP异常处理
wyzuomumu
Webjsp
1.在可能发生异常的网页中通过指令将HTTP请求转发给另一个专门处理异常的网页中:
<%@ page errorPage="errors.jsp"%>
2.在处理异常的网页中做如下声明:
errors.jsp:
<%@ page isErrorPage="true"%>,这样设置完后就可以在网页中直接访问exc