Sequence

《Python Cookbook 3rd》笔记(4.13):创建数据处理管道

吃可爱长大的小学妹 提交于 2020-11-28 01:37:06
创建数据处理管道 问题 你想以数据管道 (类似 Unix 管道) 的方式迭代处理数据。比如,你有个大量的数据需要处理,但是不能将它们一次性放入内存中。 解法 生成器函数是一个实现管道机制的好办法。为了演示,假定你要处理一个非常大的日志文件目录: foo/ access-log-012007.gz access-log-022007.gz access-log-032007.gz ... access-log-012008 bar/ access-log-092007.bz2 ... access-log-022008 假设每个日志文件包含这样的数据: 124.115.6.12 - - [10/Jul/2012:00:18:50 -0500] "GET /robots.txt ..." 200 71 210.212.209.67 - - [10/Jul/2012:00:18:51 -0500] "GET /ply/ ..." 200 11875 210.212.209.67 - - [10/Jul/2012:00:18:51 -0500] "GET /favicon.ico ..." 404 369 61.135.216.105 - - [10/Jul/2012:00:20:04 -0500] "GET /blog/atom.xml ..." 304 - ... 为了处理这些文件

算法竞赛 $0×50$ 动态规划 (+一本通

半世苍凉 提交于 2020-11-27 02:55:37
线性DP [X]Poj2279 Mr.Youngs Picture Permutations [X]Poj3666 Making the Grade [X]CH5102 Mobile Service [X]CH 5103 传纸条 [X]CH5104 I-country [X]CH5105 Cookies [X]CH5E01 乌龟棋 [X]Poj1952 BUY LOW BUY LOWER [X]Poj1934 Trip [ ]Poj1722 SUBSTRACT [ ]Poj1187 陨石的秘密 背包 [X]Poj1015 Jury Compromise [X]Poj1742 Coins [ ]CH5E04 划分大理石 区间DP [X]CH5301 石子合并 [X]Poj1179 Polygon [X]CH5302 金字塔 [ ]Poj2176 Folding [ ]Poj1191 棋盘分割 [ ]Poj1390 Blocks [ ]loj10149 凸多边形的划分 [ ]loj10150 分离与合体 [ ]loj10151/luogu1005/Noip2007 矩阵取数游戏 树形DP [X]CH5401 没有上司的舞会 [X]CH5402 选课 [X]Poj3585 Accumulation Degree [ ]Poj1463 Strategic game [ ] Poj3345

802.11协议小结

我的梦境 提交于 2020-11-26 16:23:34
简述:看了网上的资料,对802.11协议进行小结 一、协议概述   1997 年, IEEE( 电气和电子工程师协会 ) 发布了 802.11 协议 ,这是 无线局域网领域 内 第一个在国际上被认可的协议 。1999 年 9 月, IEEE 又 提出 802.11b 协议,用于对 802.11 协议进行补充,之后又推出了 802.11a 、802.11i 等一系列协议, 使无线局域网规范得到进一步完善。下面对这些协议进行简要介绍 :   a. 802.11a   802.11a 采用正交频分 (OFDM) 技术调制数据, 主要工作在5GHz 频 段 。 它的最高 速率可达 54Mbit/s , 实际使用速率大概在22~26Mbit/s之间 。   b. 802.11b   802.11b 也被称为 Wi-Fi 技术,采用补码键控 (CCK) 调制方式, 主要工作在2.4GHz 频 段 ,可以支持 5.5Mbit/s 和 11Mbit/s 两种速率 ,可以满足一定区域内人们对移动办公和家庭无线接入的需求。   c. 802.11i   2004 年 7 月 , 为了弥补 802.11 脆弱的安全加密功能 (Wired Equivalent Privacy , WEP ), IEEE 制定的 802.11i 标准最终 完成 。 在此期间, Wi-Fi 联盟 采用 802

CodeForces

一个人想着一个人 提交于 2020-11-26 08:42:22
题面在这里! (会考完之后休闲休闲2333) 可以发现,如果把一个串中"()"自动删除,最后剩的一定是形如"))))....))(((..((("这样的串,然后我们多加进去的括号的个数就是剩的这个串的长度。。 然鹅这个题首先要求的是最后总长度最小,并且我们可以观察发现把最后一个循环位移到最前面是会使一对")("相抵消的。 所以我们最后的最优答案一定是排除已经匹配的括号之后只剩一种括号的串,我们枚举一下循环位移了多少(循环位移之后一定是一个原串的后缀+前缀的形式),然后再判断一下这种循环位移是否会只剩一种串(可以把原串中 '('个数 - ')'个数 分类讨论一下,然后退出一个形如 一个区间里的前缀/后缀 都要 大于等于 某个前缀/后缀 的式子,可以 O(N) 单调队列扫一遍 ),然后用hash直接更新答案即可,显然最后多的括号都堆在前面或者后面是最优的,然后就做完了2333 (最近常数是真的小啊2333) #include<bits/stdc++.h> #define ll long long using namespace std; const int maxn=2000005,ha=1e9+9; inline int Get(char x){ return x=='('?1:-1;} inline int add(int x,int y){ x+=y; return x>=ha

Codeforces 1240B. Sequence Sorting

半腔热情 提交于 2020-11-26 04:11:01
传送门 分析题目发现如果把某个数 $x$ 往左移,那么之后所有小于 $x$ 的数也都要往左移 如果把 $x$ 往右移,那么之后所有大于 $x$ 的数也都要往右移 考虑我们首先一定有一个操作 $n$ 次的合法方案 但是发现其实有些数可以不用操作,只要把比它小的和比它大的搞成合法就行了 发现其实不用操作的数的排名一定是连续的一段,证明可以这样考虑 假设排名不是连续的一段,那么两段中间一定有一个数 $x$ 要操作,那么所有大于 $x$ 数或者小于 $x$ 的数一定要操作 那么矛盾,证明完成 那么现在只考虑排名连续的数最长不用操作的值的数量 显然只要这些数出现的最左边和最右边的区间互不相交那么一定可以不用操作 并且一旦相交就必须操作,所以直接从左到右枚举即可 #include<iostream> #include <cstdio> #include <algorithm> #include <cstring> #include <cmath> using namespace std; typedef long long ll; inline int read() { int x= 0 ,f= 1 ; char ch= getchar(); while (ch< ' 0 ' ||ch> ' 9 ' ) { if (ch== ' - ' ) f=- 1 ; ch= getchar(); }

分库分表之后,id 主键如何处理

若如初见. 提交于 2020-11-25 01:20:29
基于数据库的实现方案 数据库自增 id 这个就是说你的系统里每次得到一个 id,都是往一个库的一个表里插入一条没什么业务含义的数据,然后获取一个数据库自增的一个 id。拿到这个 id 之后再往对应的分库分表里去写入。 这个方案的好处就是方便简单,谁都会用;缺点就是单库生成自增 id,要是高并发的话,就会有瓶颈的;如果你硬是要改进一下,那么就专门开一个服务出来,这个服务每次就拿到当前 id 最大值,然后自己递增几个 id,一次性返回一批 id,然后再把当前最大 id 值修改成递增几个 id 之后的一个值;但是无论如何都是基于单个数据库。 适合的场景:你分库分表就俩原因,要不就是单库并发太高,要不就是单库数据量太大;除非是你并发不高,但是数据量太大导致的分库分表扩容,你可以用这个方案,因为可能每秒最高并发最多就几百,那么就走单独的一个库和表生成自增主键即可。 设置数据库 sequence 或者表自增字段步长 可以通过设置数据库 sequence 或者表的自增字段步长来进行水平伸缩。 比如说,现在有 8 个服务节点,每个服务节点使用一个 sequence 功能来产生 ID,每个 sequence 的起始 ID 不同,并且依次递增,步长都是 8。 适合的场景:在用户防止产生的 ID 重复时,这种方案实现起来比较简单,也能达到性能目标。但是服务节点固定,步长也固定,将来如果还要增加服务节点

PostgreSQL踩坑现场

 ̄綄美尐妖づ 提交于 2020-11-24 08:39:22
1.PostgreSQL表名、字段名、别名等大小敏感,默认都会转化成小写形式。如果名字中有大写字母,必须分别添加双引号。在写后台时,注意添加\ 如表名:TestTable中有个字段名userName 写sql查询时: select "TestTable"."userName" from "TestTable"; 后台拼装sql语句时: String sql = "select \"TestTable\".\"userName\" from \"TestTable\""; 2.如果需要将已经创建的表字段,改为自增长,不能使用serial类型(有些客户端软件有bug,会提供这个类型,但是更改会报错)。最好是自己创建sequence,然后设置默认值。 3.在PostgreSQL环境使用WallFilter时,校验很严格,sql传入类型和数据库字段类型必须匹配。 在mysql中可以这样写 String sql = "select * from rock_log_web where id in (?,?) and requestTime >= ?"; List<String> para = Lists.newArrayList(); para.add("1"); para.add("2"); para.add("2018-11-10 10:00:00"); Db.find(sql, para

MySQL发号问题的分析和改进

允我心安 提交于 2020-11-24 05:28:39
这是学习笔记的第 2253 篇文章 读完需要 5 分钟 速读仅需3分钟 关于发号器的使用,其实有一个大背景,那就是关于主键的一些设计问题,在MySQL中如果一张表没有主键,实际的数据处理就有点麻烦了。 因为在InnoDB存储引擎中,表都是按照主键的顺序进行存放的,我们叫做聚簇索引表或者索引组织表(IOT) (1)显式的创建主键Primary key。 (2)判断表中是否有非空唯一索引,如果有,则为主键。 (3)如果都不符合上述条件,则会生成UUID的一个隐式主键(6字节大) 可以使用类似的SQL来看到这个隐藏列,select _rowid from test ; 这和主键有什么关系?主要是因为有些时候我们创建主键就是为了创建而创建,没有实际的业务含义,所以会形成一种使用习惯,那就是启用自增列。 自增列的问题很多,有些几句话还说不清楚,大体有如下的一些问题 自增列没有业务含义 过度依赖自增列 自增列和状态值主键并存,反而影响业务逻辑和性能 MySQL历史遗留bug,在MySQL 8.0该问题才修复 到了这里,我们的需求也基本明确了,我们所说的发号 器其实就是要确保每次取到的ID号都是唯一的,当然也显而易见是趋势递增的。 我来说一个初版的发号器实现,假设我们创建一张表test_inc,假设按照业务逻辑,自增列的初始值为1000,则建表语句为: create table test_inc

springBoot注解大全,一键收藏!

旧时模样 提交于 2020-11-23 22:45:29
一、注解(annotations)列表 @SpringBootApplication:包含了@ComponentScan、@Configuration和@EnableAutoConfiguration注解。其中@ComponentScan让 spring Boot扫描到Configuration类并把它加入到程序上下文。 @Configuration 等同于spring的XML配置文件;使用 Java 代码可以检查类型安全。 @EnableAutoConfiguration 自动配置。 @ComponentScan 组件扫描,可自动发现和装配一些Bean。 @Component可配合CommandLineRunner使用,在程序启动后执行一些基础任务。 @RestController注解是@Controller和@ResponseBody的合集,表示这是个控制器bean,并且是将函数的返回值直 接填入HTTP响应体中,是REST风格的控制器。 @Autowired自动导入。 @PathVariable获取参数。 @JsonBackReference解决嵌套外链问题。 @RepositoryRestResourcepublic配合spring-boot-starter-data-rest使用。 二、注解(annotations)详解 @SpringBootApplication

一文搞懂NLP中的Attention机制(附详细代码讲解)

点点圈 提交于 2020-11-23 07:38:35
机器学习算法与自然语言处理出品 @公众号原创专栏作者 Don.hub 单位 | 京东算法工程师 学校 | 帝国理工大学 Outline Intuition Analysis Pros Cons From Seq2Seq To Attention Model seq2seq 很重要,但是缺陷也很明显 attention was born Write the encoder and decoder model Taxonomy of attention number of sequence distinctive co-attention self number of abstraction single-level multi-level number of positions soft/global hard local number of representations multi-representational multi-dimensional summary Networks with Attention encoder-decoder CNN/RNN + RNN Pointer Networks Transformer Memory Networks Applications NLG Classification Recommendation Systems ref 1