平心静气,破浪劈坚!
题目要求,题目地址 给定一个不含重复数字的数组,最大二叉树构建规则如下: 1、根是数组中最大的数字 2、左边的子树是最大数字左边的内容 3、右边的子树是最大数字右边的内容 答案 class Solution(object): def constructMaximumBinaryTree(s...
题目要求 编写一个类,提供两个方法。一个可以将普通的网址编码成短网址,一个可以将短网址还原为普通网址。 参考题解 # 使用随机函数,生成短网址,保存在dict中,避免重复 import random import math import re class Codec: charbase =...
目标 想要获取一个整形数字的二进制表示 bin 内置函数 看一下官方的解释 Convert an integer number to a binary string prefixed with “0b”. The result is a valid Python expression. If x is not a Python int object, it has to define an index() method that returns an integer. Some examples。
最近在做数据的搬运工,将Oracle中的数据搬运到ES中,方案很成熟了,使用Logstash的jdbc-input执行SQL,然后将结果输出到ES中。这么简单的问题,在测试环境中测试也一帆风顺,可一上生产环境傻眼了,始终报“ORA-00911 invalid character”的错误。
先来看一下错误现象 之前在Windows Server中安装了VirtualSVN Server,然后设置了Post Commit Hooks,在提交代码到版本库之后,将代码check到本地的一个Server目录。
需求目标 iPod 中有很多音乐是从原来的电脑中同步进去的,新的电脑中没有 iTunes 的音乐库。所有的音乐都在 iPod 中,会不会突然有一天坏掉了,还是备份到电脑中比较安心啊。那么如何把音乐从 iPod 中再拷贝到新电脑中呢? 需要准备的材料 你的iPod 你的Mac 一根数据线 避免 iTunes 自动同步 如果你之前选的是自动同步,那么在将 iPod 连接到 Mac 之前,一定要小心,否则会自动将 iPod 中的内容删除,因为 Mac 上并没有 iPod 中的文件。
需求及应用场景 1、简化操作。一般的软件安装过程,如果想要精简步骤,我们一般会将需要在命令行中输入的命令写成一个脚本,同时将安装介质准备好。我们将脚本和安装介质上传到生产环境,然后通过执行脚本来完成安装。
最近想要给音乐库增加一些音乐,下载了一些Ape格式的无损音乐,但是无法直接导入到iTunes中,必须经过其他工具转换成苹果的无损格式,XLD就是这样一款工具。XLD的下载和安装非常方便,直接将APP拖入到/Application文件夹下就可以。
下载Tomcat 首先在 Tomcat官方网站 找到自己合适的版本,下载 tar.gz 版本的,下载完成后解压缩到一个目录,进入这个目录下的 bin 执行 startup.sh,如果看到下面的界面,表示已经启动了。
Elasticsearch对于文档操作,提供了以下几种API,本文就说明如何使用curl方式来调用这些API。 API种类 单文档操作API 1、* Index API 索引文档 * 为文档创建索引 curl -XPUT "http://localhost:9200/twitter/tweet/1"...
现象 使用了 jQuery 1.10 的版本,想实现 checkbox 的全部选中和全部取消选中,使用了 attr 的方法,如下: $(elem).attr(“checked”) 测试过程中发现,第一次从未选中状态变为选中,再从选中变为未选中,是可以的。
Logstash与Elasticsearch的安装就不多说了,我之前有两篇文章写的比较详细了ElasticSearch + Logstash + Kibana 搭建笔记 和 Filebeat+Logstash+ElasticSearch+Kibana搭建Apache访问日志解析平台。
今天在使用Logstash的jdbc_input插件同步Mysql数据时,本来应该能搜索出10条数据,结果在Elasticsearch中只看到了4条,终端中只给出了如下信息 [2017-08-25T13:31:04,084][INFO ][logstash.pipeline ]Pipeline terminated ”main”> 看不出所以然,到 logstash 的日志 logs 目录下看最新的日志,发现了一些信息。
本文配置为 ELK 即(Elasticsearch、Logstash、Kibana)5.5.1。 Elasticsearch 能够自动检测字段的类型并进行映射,例如引号内的字段映射为 String,不带引号的映射为数字,日期格式的映射为日期等等,这个机制方便了我们快速上手 ELK,但是后期我们经常需要对一些特定的字段进行定制,之前本人有一篇文章进行这方面的尝试Logstash中如何处理到ElasticSearch的数据映射,但对于默认映射规则没有介绍,本文就来探讨一些默认的动态映射规则。
我们单位的服务器位于隔离区,不允许链接互联网,因此整理了在ELK集群上离线安装Logstash的jdbc input插件的方法,供大家参考。 总体思路是需要一台中转的机器,这台机器需要能够访问互联网,先在这台机器中将需要安装的插件及依赖包制作成离线安装包,然后再拷贝到生产机器上安装。
在使用Logstash安装插件的时候,发生了一个错误,如下: ERROR: Something went wrong when installing logstash-input-jdbc, message: java.security.KeyException 经查可能是与系统自带的OpenJDK有关,解决方案是将系统自带的OpenJDK更新为Oracle的JDK。
Logstash作为一个数据处理管道,提供了丰富的插件,能够从不同数据源获取用户数据,进行处理后发送给各种各样的后台。这中间,最关键的就是要对数据的类型就行定义或映射。 本文讨论的 ELK 版本为 5.5.1。
对于ELK还不太熟悉的同学可以参考我前面的两篇文章ElasticSearch + Logstash + Kibana 搭建笔记、Log stash学习笔记(一),本文搭建了一套专门访问Apache的访问日志的ELK环境,能够实现访问日志的可视化分析。
Logstash是一款开源的数据收集引擎,具备实时管道处理能力。简单来说,logstash作为数据源与数据存储分析工具之间的桥梁,结合 ElasticSearch以及Kibana,能够极大方便数据的处理与分析。
在HTML 5比较流行的当下,Plupload是文件上传的不二之选,特别是Adobe宣布2020年将停止对Flash的更新支持。本文记录一下如何在上传文件的时候,传递自定义参数。 了解到两种方式,一种是通过 setOption 方法,一种是直接操作对象。
ElasticSearch 安装 1、下载 ElasticSearch,本文使用的版本为 5.5.1。 2、配置 path.data: /data/es #数据路径 path.logs: /data/logs/es #日志路径 network.host: 本机地址 #服务器地址 http.port: 9200 #端口 如果不修改配置的话,默认的数据和日志都位于elasticsearch文件夹下。
当调试开源的代码时,希望查看某个函数的定义,那么就需要定位其位置。特别是有的项目中,函数会有多个地方都有定义,那么如果我想知道当前调用的这个函数是在哪里定义的,可以用下面这个方法。 function function_dump($funcname) { try { i...
最近项目需要,分析了一下Wordpress的特色图像 Feature Image的上传、保存方式,这一分析觉得Wordpress的数据结构设计还真是有想法。 先简单说一下结论: Wordpress中图像物理文件保存在 wp-content/uploads 目录下,相关信息保存在 wp_posts 表中。
PhpSpreadsheet是PHPExcel的替代版本,PHPExcel的作者已经停止了更新,今天尝试了使用PhpSpreadsheet生成Excel的时候支持单元格内的自动换行,发现用法其实差不多。
什么是Composer 简单来说,Composer是PHP的包依赖管理器。但是Composer并不是类似于Yum、Apt的包管理器。Composer可以用于包或者第三方库的安装,但是可以选择在Project范围内进行安装。
命名空间的支持版本:PHP 5 > 5.3.0,PHP 7 。 什么是命名空间 从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。
使用Eclipse(版本Indigo 3.7)调试Java项目的时候,遇到了下面的错误: Exception in thread “main” Java.lang.OutOfMemoryError: PermGen space at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) 很明显是内存溢出的错误,在Eclipse集成的Tomcat环境下,频繁进行热发布的时候会出现这个情况。
WSGI Python Web Server Gateway Interface 规范学习 由于Python的灵活性,提供了多种方式可以作为服务端语言,包括Python编写的服务器(Medusa)、Python处理模块(mod_python),或者使用CGI、FastCGI方式触发Python脚本。
我所在的部门大概管理了300+台Windows终端,最近开始采用域的方式来进行管理。(别笑我们土,原来手工修改Windows口令太痛苦了。) 现在的任务是想在域控服务器中列出纳入域管理的所有机器,以及最近登陆的时间。
在使用PHPExcel导出文件时,经常会因为文件过大导致PHP内存溢出报错,为了解决这个问题,可以使用PHPExcel提供的参数进行优化。这里说的Excel文件过大并不一定是文件大小,更关键的在于文件内存放的数据和格式,如果数据很多,格式又比较丰富,那很容易会将PHP的内存耗尽。
最近项目需要统计一段日期范围内,根据每分钟、几分钟、每天分别统计汇总某些事件/指标的发生总次数,平均发生次数,因此总结了Mysql中与时间处理、统计相关的资料。 按分钟统计某一时间段内的数据 SELECT count(1), date_format(a5_firsttime, "%H:%i") as t from ccb_alerts group by t order by null 这个统计汇总方法,可以按照每天、工作日(周一至周五)、小时、分钟、月等维度来汇总统计。
原来在一台Windows 2008服务器上配置了一个SVN UPDATE的计划任务,定期将版本库中的最新版本抓取到本地。在主机名更改后,计划任务执行失败,提示“所指定的账户名称无效”。 具体来看一下下图,箭头所指的部分是表示任务的创建用户,表示形式类似于:Win-X75T2/Administrator,主机名修改后位于原来主机名上的用户就找不到了,所以需要重新修改。
最近在学习Python,从网上粘贴的代码很多缩进都是空格,这样就会导致代码执行的时候报错,因为Python是依靠缩进来判断代码层次的。我的编辑器是Sublime Text 3看了一下,原来转换成Tab非常简单。
Python提供了众多的PDF支持库,本文是在Python3环境下,试用了两个库来完成PDF的生成的功能。PyPDF对于读取PDF支持较好,但是没找到生成多层PDF的方法。Reportlab看起来更成熟,能够利用Canvas很方便的生成多层PDF,这样就能够实现图片扫描上来的内容也可以进行内容搜索的目标。
最近一段运行良好的代码突然无法运行,报错: MySQL said: Documentation 1690 - BIGINT UNSIGNED value is out of range in 经过查询,发现这个错误的原因是两个时间字段进行减法运算时,如果有一个时间为0000-00-00时造成的,根本原因是因为这样减法的结果会超过Mysql数值字段的范围,从而触发1690报错。
面向对象编程 面向对象编程 Object Oriented Programming 简称 OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。 面向过程的程序设计把计算机程序视为一系列的命令集合,即一组函数的顺序执行。
Python 的高级特性 切片 对于指定索引范围取值的操作,Python提供了slice方法,类似于Excel中数据透视表的切片器。 >>> L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack’] #声明一个List,取前三个值 >>> L[0:3] ...
知识是一座宝库,而实践就是开启这座宝库的钥匙。----Thomas Fuller 开始之前 基础示例 Python语法基础,python语法比较简单,采用缩紧方式。 # print absolute value of a integer a = 100 if a >= 0: print(a) else: print(-a) 可以看到,注释以#开头,python的变量不需要任何前缀,行结束不需要结束符号,非常符合我们自然语言的阅读和书写习惯。
对于所有喜欢Mac操作系统的用户来说,如果办公环境必须使用Windows及Windows程序,那一定会非常崩溃,因为你很可能使用了Parallels Desktop来运行你的Windows虚拟机,那么你将会体验风扇狂转、机器发烫的感觉。
Rsync 简要介绍 rsync 是一个用于增量文件传输的开源工具,不得不说,rsync简直是不同服务器间传输文件、同步文件的利器。与FTP相比,它具有非常简单的安装和配置方法。而且,rsync可以只拷贝发生过变化的文件,这就让传输效率非常高。
关于Favicon favicon 在英文中有几个别名,叫做 shortcut icon,website icon,tab icon,URL icon,bookmark icon,对应中文来说也叫作网页小图标、网站缩略图或收藏夹图标、书签图标。
本文主要记录两个命令的学习情况:diff 和 patch。diff 和 patch 是一对工具,使用这对工具可以获取更新文件与历史文件的差异,并将更新应用到历史文件上。在数学上说,diff就是对两个集合的差运算,patch就是对两个集合的和运算。
Nutter说,经过一次投资50万美元的介质升级后,KeyBank留下了8500盘包含客户财务信息的旧磁带。这家银行考虑过重写这些磁带,但Nutter说这样做每盘磁带需要长达1小时的时间。因此,他求助于一家磁带转销商接手这些磁带。
很久之前就知道Github可以发布自己的博客,因为仅支持静态文件,一直懒于动手自己进行编辑。再了解到还存在 JekyII 和 Hexo 这样的内容生成框架后,终于决定体验一下。 一、本地环境准备。 Github Pages的申请过程就不再搬砖,Github的页面上说的很清楚,注意每个用户只能创建一个与自己用户名相同的Pages。
Sublime Text 3对于Sublime Text 2压倒性的优势就是秒启动,启动非常非常快,所以从2012年到2016年我一直用Sublime Text 2,但是安装了3并且启动试用后,我再也不愿意打开Sublime Text 2了。
PHPExcel是一款优秀的处理Excel文件读写的开源PHP Library,能够给我们提供强大的Excel读写能力,本文针对Excel处理过程中关于日期和时间类型的处理进行深入的讨论。PHPExcel最新的版本是2014年3月2日发布的1.8.0版本,后来项目迁移到了GitHub,后续的版本已经更名为PHPSpreadSheet。
The payment you receive per click depends on how much advertisers are paying per click to advertise using Google’s AdWords service.
本文要解决两个问题: 1、在ajax的数据交互中,如何获得后台的处理进度? 2、在前台界面中,如何使用图形化的方式展示后台处理进度? 关于第一个问题,不是本文的重点,简单说一下思路。因为HTTP协议实际上是无状态的协议,前台的请求提交给后台之后,一般情况下都是后台处理完成才会向前台返回处理结果。
crontab 是Linux中配置定时任务的工具,在各种配置中,我们经常会看到除号(Slash)的使用,那么这个除号到底标示什么意思,使用中有哪些需要注意的地方呢? 在定时任务中,我们经常有这样的需求,比如每5分钟查看一下日志,我们可以这么写: 0,5,10,15,20,25,3...
Codeigniter的文件上传类方便了我们使用PHP来处理文件上传的操作,使用起来非常简单,如下: $config['upload_path'] = './uploads/'; $config['allowed_types'] = 'gif|jpg|png'; $config['m...