最长回文子串求解_马拉车算法学习

以hidoCoder上的一道裸题为例 如果我们不会manacher算法。我们应该如何解决这个问题呢? 我们首先学习一个叫中心扩展算法的东西。 对于回文串我们可以选择一个中心,进行左右扩展,判断左右两边字符是否相等。 因为字符存在奇数个或者偶数个,我们可以选择每个字符或者两个字符之间的空格进行扩展。所以总共可以产生2 * n - 1个中心。 实验实现的代码: public String longestPalindrome(String s) { if (s == null || s.le
分类: 其他 发布时间: 05-19 23:23 阅读次数: 0

移动布局之响应式开发

响应式开发不需要单独制作移动端页面。 响应式开发原理:就是使用媒体查询针对不同宽度的设备进行布局和样式的设置,从而适配不同设备的目的。 设备划分 尺寸区间 超小屏幕(手机) x < 768px 小屏设备(平板) 768px <= x < 992px 中等屏幕(桌面显示器) 992px <= x < 1200px 宽屏设备(大桌面显示器) x >= 1200px 响应式布局容器: 响应式需要一个父级作为布局容器,来配合子级元素来实现变化效果。 原理就是在不同屏幕下,通过媒体查询来改变这个布局容器
分类: 其他 发布时间: 05-19 23:23 阅读次数: 0

【数据结构】环形缓冲区ring buffer

环形缓冲区是一个常用的数据结构,熟练使用环形缓冲区可以加快日常工作中的项目进度。本文会实现一种可用于嵌入式单片机,也可以用于嵌入式Linux和PC软件端的环形缓冲区数据结构,看懂本文,无论你是写PC软件,还是嵌入式软件,即使是单片机,也可以将其应用在你的项目上。 ———这篇文章,可能是我见过和我所能搜索到的关于ring buf最好的文章了。 点击下方链接查看公众号内容: https://mp.weixin.qq.com/s?__biz=MzAwNzU4NzU3Mg==&mid=22474837
分类: 其他 发布时间: 05-19 23:23 阅读次数: 0

在线公开课 | 免运维、弹性伸缩、按需付费...Serverless还有多少惊喜是我不知道的?

课程概要 云计算的出现改变了传统IT架构和运维方式,容器、微服务为代表的技术在各个层面不断升级云服务的技术能力,它们在应用和环境中的很多通用能力变成了一种服务。 在云原生时代,应用开发的新理念和新技术层出不穷,Serverless 也称为了热门选择,随着这些技术的不断发展,能让开发者更加心无旁骛聚焦业务开发,无需再去操心云计算的基础底层概念,甚至以近乎无感的方式获得云计算的帮助,提升效率及产出。 据Gartner 报告表明,到2020年,全球20%的企业将采用Serverless 技术部署。同
分类: 其他 发布时间: 05-19 23:23 阅读次数: 0

第五章 用户身份与文件权限

一、用户 管理员用户 uid=0 系统用户 rhel5/6 uid=1-499 rhel7 uid=1-999 Linux系统为了避免因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。 (rhel/5/6允许65535个用户,rhel7已经超过了这个限制) 普通用户UID从1000开始:是由管理员创建的用于日常工作的用户 二、用户组 基本组,创建用户时自动创建 扩展组 可以加入多个 三、文件类型 四、文件权限 r 4 w 2 x 1
分类: 其他 发布时间: 05-19 23:23 阅读次数: 0

day56js+jQuery

今日内容概要 原生JS事件结束 jQuery(封装了js的前端框架(模块)) 很容易与我们学的DOM操作混淆 原生js事件绑定 我们直接写几个案例,看懂即可 案例一:开关灯案例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .c1 { height: 400px; width: 400px; border-radius: 50%; } .bg_green {
分类: 其他 发布时间: 05-19 23:23 阅读次数: 0

IDEA提交失败,提示:OpenSSL SSL_connect: SSL_ERROR_SYSCALL

提交代码时出错的解决办法
分类: 其他 发布时间: 05-19 23:20 阅读次数: 0

亚马逊开店要如何着手,应该避免踩到哪些坑?

众所周知,今年跨境电商无货源模式得到了一个很大的发展,很多人都知道这种模式投资少门槛低,回本快,于是不管是额外想增加一份收入的,还是想创业的,很多人扎进了这个行业。大家都知道,做亚马逊无货源的选品是非常重要的,我们想要保证选出来不错的商品就得从源头上开始抓,我们从哪里进购的商品就显得尤为重要了。如果我们选不好供应商确实是个大问题。今天小编就给大家分享一下,希望可以帮助到大家。然而,对于很多有兴趣尝
分类: 其他 发布时间: 05-19 23:20 阅读次数: 0

Atomic类的getAndIncrement()方法与incrementAndGet()区别

Atomic类是JDK1.5开始增加的内容,用于基本类型的原子操作。 其中getAndIncrement()方法与incrementAndGet()是常见的两种方法   getAndIncrement(): public final int getAndIncrement() { return unsafe.getAndAddInt(this, valueOffset, 1); }   incrementAndGet(): public final int incr
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

MVC、MVP、MVVM模型

在学习vue、react的过程中,总能看到MVVM模型,那么MVVM究竟是什么,下面将我最近看到的资料以及自己的想法总结一下。 与MVVM相似的,还有MVC、MVP,先从MVC、MVP这两个入手,方面后面对MVVM的理解。 一、 MVC M:Model,即模型,也可以理解为数据层,用于封装数据以及数据的处理方法。 V:View,即视图层,用户界面,是程序的外壳。 C:Controller,即控制器,用于连接View与Model,主要是从View层获取指令,然后再在Model层选取相应的数据之后
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

主流原型设计软件介绍

原型设计是设计师将自己的想法转变为设计过程中至关重要的一环,一个设计师不会只用一款原型设计软件,设计师在意的是“哪一款实际工具在当下对我实现目标是最好的” 在现在众多的原型设计软件中,我挑了几款在不同场景下最适合的原型设计工具 首先推荐的是Mockplus 3 这是一款新型国产的原型实际工具,致力于快速构建和迭代原型它支持手机app,网页原型设计,平板项目,自由项目等全平台原型项目支持,当你在设计一些具有有限的功能和交互式设计快速的手机端和Web网站场景时,这款工具将是你的好帮手 第二款是Ba
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

Oracle 命令汇总

1.使用Sqlplus 连接数据库实例 sqlplus username[/password][@connect_identifier][as sysoper|sysdba] 2. P23 Oracle 数据库实例的启动过程分为3个步骤,启动实例,加载数据库,打开数据库 打开命令格式: startup [nomout|mount|open|force][resetrict][pfile=filename] racle 数据库实例的启动过程分为3个步骤,关闭实例,卸载数据库,关闭数据库 关闭命令
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

01Hadoop基础环境、zookeeper概念以及特性

三台虚拟机无密码登录 1、关闭虚拟机的防火墙以及selinux #防火墙 service iptables stop chkconfig iptables off #selinux vim /etc/selinux/config SELINUX=disabled 2、机器更改主机名 vim /etc/sysconfig/network 3、主机ip映射 vim /etc/hosts 然后重启虚拟机 reboot -h now 4、机器创建公钥和私钥 ssh-keygren -t rsa 5、将
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

尺取法+变通

所谓尺取法,是枚举区间的时候的一种优化思想。 尺取法通常适用于选取区间有一定规律,或者所选取的区间有一定的变化趋势的情况。 一般题目的尺取法比较普通,所以以下例题所用尺取法将比较特别。 尺取+逆元 https://ac.nowcoder.com/acm/contest/3005/C l代表左端点,r代表右端点,当长度=k时,就比较答案,然后l++,r++,始终维持着长度=k,而因为是区间乘积,所以在l++、r++时,我们要把第 l 个元素除去,以及乘上第 r 个元素,而我们当前答案值已经是取模
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

分桶表

前言 学习总结一下Hive的分桶表。 分桶规则:对分桶字段值进行哈希,哈希值除以桶的个数求余,余数决定了该条记录在哪个桶中,也就是余数相同的在一个桶中。 优点:1、提高join查询效率 2、提高抽样效率 1、建表 通过 clustered by(字段名) into bucket_num buckets 分桶,意思是根据字段名分成bucket_num个桶 create table test_bucket ( id int comment 'ID', name string comment '名
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

maven项目怎么搭建

填一下
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

docker 学习笔记-6

将数据保存在容器外部 容器在运行项目时会产生数据,比如运行的mysql容器,那么一定会有数据产生。 如果将数据保存在容器内部,那么也就意味着我们改变了原有镜像,这种做法是不可取的,因为在后期的镜像升级将变得不可能了。也就是说,运行的镜像,最好不要改变,如果必须改变,在改变后记得commit提交打成一个新的镜像 显然,数据是应该保持在容器的外部,也就是说保持在主机上了。那么容器如何读取主机中的数据呢? 挂载参数 -v 在create或者run容器时,通过-v参数指定主机的目录,挂载在容器中的某一
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

redhat7 安装 mysql5.7

1.下载包 https://downloads.mysql.com/archives/community/ https://dev.mysql.com/downloads/mysql/ https://downloads.mysql.com/archives/workbench/ 工具 2.卸载Mariadb rpm -qa | grep mariadb rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 --nodeps 3. MySQL安装 rpm -i
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

win10上鼠标右键怎么进入cmd

背景: 在win7上有个很好的功能,在文件夹空白区域,按住 “ ctrl + 鼠标右键 ” 可以直接打开 cmd 窗口 但是在win10上同样的操作方法,打开的窗口却是 powershell,在 powershell 窗口中很多命令不能使用,感觉很不方便。 解决方法: 解决方法很简单,只需要修改注册表就可以了,给鼠标右键添加打开 cmd 窗口的注册信息就可以了 详细操作步骤 步骤1:打开 “ 运行 ” 窗口 步骤2:输入 “ regedit ” 步骤3:点击 “ 确定 ” 步骤4:依次展开文件
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0

26.FileStream

FileStream作用 为文件提供流操作,既支持同步读写操作,也支持异步读写操作。 构造方法 public FileStream (string path, System.IO.FileMode mode, System.IO.FileAccess access):使用指定的路径、创建模式和读/写权限初始化 FileStream 类的新实例。 path:当前 FileStream 对象将封装的文件的相对路径或绝对路径。 mode:用于确定文件的打开或创建方式的枚举值之一。 access:枚举
分类: 其他 发布时间: 05-19 23:07 阅读次数: 0