数据结构与算法 查找 二分查找

顺序查找 当数据存储在诸如列表的集合中时,我们说这些数据具有线性或顺序关系。 每个数据元素都存储在相对于其他数据元素的位置。 由于这些索引值是有序的,我们可以按顺序访问它们。 这个过程产实现的搜索即为顺序查找。 顺序查找原理剖析: 从列表中的第一个元素开始,我们按照基本的顺序排序,简单地从一个元素移动到另一个元素,直到找到我们正在寻找的元素或遍历完整个列表。如果我们遍历完整个列表,则说明正在搜索的元素不存在。 代码实现:该函数需要一个列表和我们正在寻找的元素作为参数,并返回一个是否存在的布尔值
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

virtualenv--python的虚拟环境

virtualenv背景介绍   virtualenv就是虚拟环境的意思.   我们可以借助虚拟机,docker(容器)来理解虚拟环境,二者都是把一部分内容独立出来,然后我们可以根据实际情况安装需要的依赖包,并且所独立出来的环境之间互相隔离,互不影响。   虚拟机:存在于硬件层和操作系统层间的虚拟化技术。       虚拟机通过“伪造”一个硬件抽象接口,将一个操作系统以及操作系统层以上的层嫁接到硬件上,实现和真实物理机几乎一样的功能。    容器:存在于操作系统层和函数库层之间的虚拟化技术。
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

ASP.NET Core MVC 之依赖注入 View

  ASP.NET Core 支持在试图中使用依赖注入。这将有助于提供视图专用的服务,比如本地化或者仅用于填充视图元素的数据。应尽量保持控制器和视图之间的关注点分离。视图所显示的大部分数据应该从控制器传入。   使用 @inject 指令将服务注入到视图,语法 @inject <type> <name>,例如: @model MVCTest.Models.Operation @using MVCTest.Services @inject BaseInfoServices BaseInfoS
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

P2679 NOIP2015T5 子串 DP+滚动数组

题意:给出两个字符串,求用第一个字符串中的子串去匹配第二个子串,而且第一个字符串的子串在匹配第二个字符串时要按顺序; 用滚动数组来优化DP,否则会MLE; 设 f[i][j][k][0/1]f[i][j][k][0/1]f[i][j][k][0/1]表示是否一定使用了 A串中的第 i个字符,并用了 A中的 k个子串来匹配了 B串中的前 j个字符 ( 0表示一定不用, 1表示一定用 ) 状态转移方程: f[i][j][k][0]=f[i−1][j][k][0]+f[i−1][j][k][1]f[
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

Apache官网下载Apache HTTP Server服务器

①、打开apache官网http://httpd.apache.org/ (或百度"download apache")。 ②、点击Download,出现以下界面 。 ③、选择Windows版下载,点击链接。 ④、在新的界面中,会发现VC9和VC11字样,通过阅读相关内容得知,VC9是指用VS2008编译的代码,而VC11是用VS2012编译的,而用VS2012编译的无法在Windows XP和Server 2003中使用。算是为了兼容性好点吧,本人选的用VC9编译Apache,选择下载至此,下
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

【Python与线程】 -- 2019-08-16 21:12:56

原文: http://blog.gqylpy.com/gqy/232 " 目录 一、全局解释器锁GIL 二、Python线程模块的选择 三、线程的创建 三、锁机制 四、信号量 五、事件 六、条件 七、定时器 八、线程队列 九、线程池 补充:线程安全 import threading obj = threading.local() # local():可实现,多线程操作某一数据,不会出现数据混乱的情况 # 原理:空间换时间 def add(i): obj.n = i pri
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

知识点 - 线段树 权值 树套树 二维 可持续

知识点 - 线段树 权值 树套树 二维 可持续 //区间更新求和 inline int ls(int p) { return p << 1; }//左儿子 inline int rs(int p) { return p << 1 | 1; }//右儿子 void push_up(int p) { t[p] = t[ls(p)] + t[rs(p)]; }// 向上不断维护区间操作 void build(ll p, ll l, ll r) { if (l == r) { t
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

[BZOJ 2683] 简单题 (CDQ分治)

[BZOJ 2683] 简单题 (CDQ分治) 题面 N*N矩阵,支持单点修改,查询某一个子矩阵内的和 \(n \leq 500000\),操作数\(\leq 200000\) 分析 首先运用二维前缀和的思想,把子矩阵的和拆成四个前缀和。 然后把询问和修改看成(x,y,t)的三元组,t表示当前是第几次操作。然后就变成三维偏序问题,对于每个询问,找x,y,t均比它小的修改操作,再求和。 代码 #include<iostream> #include<cstdio> #include<cstring
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

第九章、python文件的两种用途

目录 第九章、python文件的两种用途 一、用途 第九章、python文件的两种用途 一、用途 当前运行的文件(脚本) 被导入的文件(模块) # aaa.py x = 1 def f1(): print('from f1') def f2(): print('from f2') f1() f2() # run.py (脚本) import aaa 说明:如果直接运行run.py会直接运行aaa.py中的f1()和f2(),但是如果我们在aaa.py中加上if
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

「训练反思18」 (8.16) 认清自己

很多天没有写博客了,自从那天一天考了两次之后。   这几天吧,很颓,真的很颓,可能是在做开学的最后挣扎,挣扎吧,反正要结束了,暑假也就这么一点了,且行且珍惜吧。   大家在一起挺好的,这恐怕是这三年在衡中最放肆的时候了。   每天晚上聊天说地,有的没的,很开心,很满足。   可是我还是不想这么早跟他们分开啊。   说说学习上的事儿吧。   这几天考试忽难忽简单,很神奇,简单的题能A半个机房,A两道的大佬也很多,那次达哥的周、任、飞AK了四个,很恐怖。难的呢,全场只有一个人上100了(%%%sk
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

走进JavaWeb技术世界9:Java日志系统的诞生与发展

> 微信公众号【黄小斜】大厂程序员,互联网行业新知,终身学习践行者。关注后回复「Java」、「Python」、「C++」、「大数据」、「机器学习」、「算法」、「AI」、「Android」、「前端」、「iOS」、「考研」、「BAT」、「校招」、「笔试」、「面试」、「面经」、「计算机基础」、「LeetCode」 等关键字可以获取对应的免费学习资料。 ![](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9waWMzLnpoaW1nLmNvbS84MC92Mi1jN
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

输入输出流的应用

1、文件复制 用FileInputStream和FileOutPutStream实现文件的复制,此方法不能复制文件夹。 package pers.zhh.copy; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class CopyDemo { public static void main(String[] arg
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

Django--多对多表操作/通过母版渲染页面

目录 Django--多对多表操作+母版 需求 步骤 添加路由映射关系 老师表的增删改查 ajax操作老师表 Django--多对多表操作+母版 今天还以一个学生管理系统为例,先通过pymysql这个模块,进行多对多表操作,以下两种方式 新url的方式:直接新开一个页面进行操作 ajax模态框的方式:在本页面通过模态框的方式进行操作 需求 对老师表进行增删改查,此时老师表和班级表是多对多关系 步骤 开始写功能 添加路由 设计模板 写对应的接口函数 添加路由映射关系 urlpatterns =
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

062 time模块

time模块 1.import time 2.时间戳 时间戳(timestamp):时间戳表示的是从1970年1月1日00:00:00开始按秒计算的时间。 (模块名)time.time()(方法名) 3.格式化时间 格式化的时间字符串(format string):格式化时间就是是普通的字符串格式的时间。 time.strftime('%Y_%m_%d %X') # 2019_08_16 10:26:36 4.结构化时间 结构化的时间(struct time):struct_time元组共有
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

>>>>>>>#和$的区别?<<<<<<<<<

1.#:底层相当于preparedStatement,支持?占位符的,而$相当于使用Statement,不支持占位符,所有的参数都是拼装的。 2.我们推荐使用#,但是在有些情况下必须使用$: (1)Select * from xxs where name like ‘${n}’// like 本身在''里面时要使用$ (2)Select * from ${tablename}//表名字是动态的必须使用$ (3)Select * from xxx where .. order by ${name}
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

编写装饰器,实现缓存网页内容的功能

编写下载网页内容的函数,要求功能是:用户传入一个url,函数返回下载页面的结果并编写装饰器,实现缓存网页内容的功能: 具体:实现下载的页面存放于文件中,如果文件内有值(文件大小不为0),就优先从文件中读取网页内容,否则,就去下载,然后存到文件中 import os from urllib.request import urlopen def cache(func): def inner(*args,**kwargs): if os.path.getsize('网
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

openSmile-2.3.0在Linux下安装

我这边官网下载的特别慢,提供一下云盘下载安装包: 链接:http://pan.baidu.com/s/1sl2YGbz 密码:p1vj windows下的我也下载了 链接:http://pan.baidu.com/s/1i5aOOol 密码:guvv 首先 安装依赖包 sudo apt-get install automake sudo apt-get install autoconf sudo apt-get install libtool sudo apt-get install m4 s
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

061 包

logging模块 1.v1 v1版本无法指定日志的级别;无法指定日志的格式;只能往屏幕打印,无法写入文件。 1.日志总共分为以下五个级别: logging.debug('调试') logging.info('正常') logging.critical('严重错误') logging.error('错误') logging.warning('警告') 默认运行,会显示: WARNING:root:警告信息 ERROR:root:报错信息 CRITICAL:root:严重错误信息 2.v2 v2
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

工业互联网数据传输探讨

  近于该信息来源地,而不是通过长路径传输到数据中心或云。据DC预测,未来将会有超过 50%的数据在边缘侧处理:到 2020年,边缘计的支出将占物联网基础设施总支出的 189%29目前,大量的工业互联网应用场景对边缘技术已经提出了明确的求,且开始落地。在平台应用中,边缘设备会收集数据(通常是互设备所产生的大量数据)。边缘计算在本地对数据进行分类,因此有些数据是可在本地处理的,从而减少了到中央存储库的回程通信量。 数在边缘层处理后,会将部分数据发送到中央处理或存储库,如数据中心、协同办公设施或云
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0

063 datatime模块

datetime模块 datetime模块可以看成是时间加减的模块 1.import datetime 导入datetime模块 datetime.datetime.now() # 打印当前时间 # 2019-08-16 19:55:21.141274 now = datetime.datetime.now() print(now+datetime.timedelta(3)) # 默认+3天 print(now+datetime.timedelta(hours=3)) # 当天时
分类: 其他 发布时间: 08-16 21:34 阅读次数: 0