天道酬勤,学无止境

博客

任务调度器

题目介绍 力扣621题:https://leetcode-cn.com/problems/task-scheduler/ 给你一个用字符数组 tasks 表示的 CPU 需要执行的任务列表。其中每个字母表示一种不同种类的任务。任务可以以任意顺序执行,并且每个任务都可以在 1 个单位时间内执行完。在任何一个单位时间,CPU 可以完成一个任务,或者处于待命状态。 然而,两个 相同种类 的任务之间必须有长度为整数 n 的冷却时间,因此至少有连续 n 个单位时间内 CPU 在执行不同的任务,或者在待命状态。 你需要计算完成所有任务所需要的 最短时间 。 分析 调度(Schedule)是操作系统的核心功能之一,保证多任务多线程的应用能够高效的利用硬件资源。本题就是模拟了操作系统中CPU任务调度的过程。 不同的任务可以依次执行,说明现在是单核CPU串行运作,同一时间只能执行一个任务。而同类型任务之间设置了冷却时间,主要也是为了保证各类型任务能够尽量均匀地占有CPU,不要出现长时间运行同一类任务的情况。 我们发现,由于任务是串行的,所以每个任务的执行时间不可能缩短,至少需要tasks.length个时间单位。而现在要想总执行时间最短,其实就是让额外的冷却时间最短。 方法一:模拟法 一种简单的想法是,我们按照时间顺序,依次给每一个时间单位分配任务。这就相当于我们模拟了一个CPU时钟

2022-01-07 19:15:14   

Data Analysis - Day2 - Matplotlib 案例

文章目录 散点图案例: 北京2016年3月 和10月 最高气温, 找出气温随时间变化的规律条形图案例1: 2017年内地电影票房前20的电影(列表a)和电影票房数据(列表b)条形图案例2: 列表a中电影分别在2017-09-14(b_14), 2017-09-15(b_15), 2017-09-16(b_16)三天的票房直方图案例:获取了250部电影的时长(列表a中),希望统计出这些电影时长的分布状态 散点图案例: 北京2016年3月 和10月 最高气温, 找出气温随时间变化的规律 y3 = [11,17,16,11,12,11,12,6,6,7,8,9,12,15,14,17,18,21,16,17,20,14,15,15,15,19,21,22,22,22,23] y10 = [26,26,28,19,21,17,16,19,18,20,20,19,22,23,17,20,21,20,22,15,11,15,5,13,17,10,11,13,12,13,6] from matplotlib import pyplot as plt from matplotlib import font_manager my_font = font_manager.FontProperties(fname=r'C:\Windows\Fonts\simsun.ttc') y3 = [11,17

2022-01-07 19:15:08   

继马云之后又一名大佬急流勇退了,就在今天字节CEO张一鸣发布内部全员信,宣布卸任CEO一职。

张一鸣 字节CEO 1983年出生的张一鸣 ,在2005年从南开大学毕业后,至今参与创办了5家公司,今日头条、抖音等知名APP之父,2013年,他先后入选《福布斯》“中国30位30岁以下的创业者”和《财富》“中国40位40岁以下的商业精英”,是目前国内互联网行业最受关注的青年领袖之一。 5月20日,字节跳动创始人张一鸣发布内部全员信,宣布卸任CEO一职。字节跳动联合创始人梁汝波将接任成为新CEO。 在全员信中,张一鸣表示,创业以来,字节跳动有幸抓住了时代发展的机遇,基于机器学习技术在移动端和视频上进行创新与实践,取得了一些成绩。虽然公司业务发展良好,但希望公司还能持续有更大的创新突破,变得更有创造力和富有意义。因此,张一鸣决定放下公司日常管理,聚焦远景战略、企业文化和社会责任等长期重要事项,计划“相对专注学习知识,系统思考,研究新事物,动手尝试和体验,以十年为期,为公司创造更多可能”。 在张一鸣看来,科技公司面临的外部环境正在变化:虚拟现实、生命科学、科学计算对人类生活的影响都已逐步显现,科技对社会的影响也越来越大,这些因素决定了字节跳动“需要突破业务的惯性去探索,并持续学习企业如何更好地承担社会责任”。 字节跳动(ByteDance Ltd.)创始人张一鸣将把对TikTok所有者的控制权让与一位大学时的室友兼副手梁汝波 在这个全球最有价值的初创公司备受期待的上市前退出运营

2022-01-07 19:14:53   

ITK:形态分水岭MorphologicalWatershed分割

ITK:形态分水岭MorphologicalWatershed分割 内容提要 输出结果 C++实现代码 内容提要 形态分水岭分割 输出结果 输出: Running with: Threshold: 20 Level: 3 C++实现代码 #include <iostream> #include "itkImageFileReader.h" #include "itkImageFileWr 来源:https://blog.csdn.net/it_xiangqiang/article/details/117092746

2022-01-07 19:14:49   

通过一个Kafka故障解决过程阐述架构师必须具备的架构思维

本文是Kafka系列第4篇,从问题出发,从而探讨集群分区迁移实战、底层原理以及运维时需要考虑的问题。 掌握一到两门java主流中间件,是敲开BAT等大厂必备的技能,送给大家一个Java中间件学习路线,助力大家实现职场的蜕变。 Java进阶之梯,成长路线与学习资料,助力突破中间件领域 1、问题描述 某一天突然收到开发环境Kafka报 IO Exception(many open files),其相关的日志如下: 问题是发生在公司的开发环境,为了避免信息泄露,我在本地进行了模拟,不影响本次问题的分析与学习。 2、问题分析 首先我们要能看懂Kafka-manager上的一些监控指标,topic列表中关于topic的信息项如下所示: topic topic名称 Partitions 分区数 Brokers 该topic 队列分布的broker数量。 Brokers Spread % 该topic中队列在Broker中的使用率,例如集群中有5个broker,但topic只在4个broker上创建了队列,那使用率为80%。 Brokers Skew % topic的队列倾斜率。如果集群中存在5个broker节点,topic的总分区数量为4,副本因子为2,但这些队列只分布在其中的4台broker中。那topic的broker使用率(Broker Spread)为80%。 众所周知

2022-01-07 19:14:42   

elasticsearch7.X Mapping常见字段类型整理

参考:https://www.phpmianshi.com/?id=254 一、核心数据类型 字符串:text, keyword 数值型:long, integer, short, byte, double, float, half_float, scaled_float 布尔型:boolean 日期型:date, date_nanos 二进制:binary 范围型:integer_range, float_range, long_range, double_range, date_range 1. 字符串 text text 类型的字段数据会被分词,在生成倒排索引以前,字符串会被分词器分成一个一个词项。 text 类型的字段不用于排序,很少用于聚合(termsAggregation除外)。 如果一个字段需要被全文搜索或模糊匹配,比如文章内容、产品描述、新闻内容等,应该使用text类型。 keyword keyword 类型的字段内容不会被分词。 keyword 类型的字段只能通过精确值搜索到,用于过滤、排序、聚合。 适用于索引结构化的字段,比如IP地址、性别和地区等。 2. 数值型 整数 类型最小值最大值说明 byte -128 127 8 位有符号整数(1个字节),相当于MySQL中有符号的 tinyint short -32768 32767 16 位有符号整数(2个字节)

2022-01-07 19:14:34   

Android反编译技术

一、工具篇 1、apktool 下载地址:https://pan.baidu.com/s/1S9pzAtzLMCAegjUkZRDlTw 提取码:2ega 2、baksmali / smali 下载地址:https://bitbucket.org/JesusFreke/smali/downloads/ 3、dex2jar 下载地址:https://pan.baidu.com/s/1S9pzAtzLMCAegjUkZRDlTw 提取码:2ega 4、jd-gui 下载地址:https://pan.baidu.com/s/1S9pzAtzLMCAegjUkZRDlTw 提取码:2ega 二、基础应用篇 1、apktool - 反编译apk:java -jar apktool.jar d xxx.apk 反编译后的文件结构 > lib 存放第三方库 > original 存放未经过反编译的文件 > res 存放资源文件,例如图片、颜色、字符等 > smail 存放java编译成的smail代码 > AndroidManifest.xml Android清单文件,提供Android系统必要信息 - 重新编译apk:java -jar apktool.jar b xxx.apk > dist 存放重新编译所生成的apk - 签名:1、生成keystore文件 2、签名apk >

2022-01-07 19:14:28   

学习日记(01-10天,基本语法)

目录 01.搭建环境02.基本算数操作03.基本if语句04.闰年的计算 01.搭建环境 搭建java环境,成功后可以看到java版本信息,如图 在eclipse创建一个java项目: 02.基本算数操作 在println里可以使用字符串拼接输出,代码: package xjx; import java.util.Arrays; public class My { public static void main(String[] args) { int a, b, ans; double a1, b1, ans1; a = 28; b = 6; a1 = 2.1; b1 = 2.9; //Addition ans = a + b; ans1 = a1 + b1; System.out.println("" + a + " + " + b + " = " + ans); System.out.println("" + a1 + " + " + b1 + " = " + ans1); //Subtraction ans = a - b; ans1 = a1 - b1; System.out.println("" + a + " - " + b + " = " + ans); System.out.println("" + a1 + " - " + b1 + " = " + ans1)

2022-01-07 19:14:19   

StringTable

String的基本特性 String:字符串,使用" "引起来表示String声明为final的,不能被继承String实现了Serializable接口,表示字符串是支持序列化的。实现了Comparable接口,表示String可以比较大小String在jdk8及以前内部定义了final char[ ] value用于存储字符串数据。jdk9时改成byte[ ]String代表不可变的字符序列。简称:不可变性 当对字符串重新赋值,需要重写指定内存区域赋值,不能使用原有的value进行赋值当对现有的字符串进行拼接操作时,也需要重新指定内存区域赋值,不能使用原有的value进行赋值当调用String的replace()方法修改指定的字符串时,也需要重新指定内存区域,不能直接使用value进行赋值通过字面量的方式(区别于new)给一个字符串赋值,此时字符串值声明在字符串常量池中 public class StringTest { @Test public void test1(){ String s1="abc";//字面量定义的方式,“abc”存储在字符串常量池中 String s2="abc"; System.out.println(s1==s2);//地址判断 s2="hello";//此时,是在字符串常量池中重新造一个“hello”,不是在原来的“abc”的基础好上修改

2022-01-07 19:14:13   

ITK:使用分水岭Watershed方法对图像进行分割

ITK:使用分水岭Watershed方法对图像进行分割 内容提要 输出结果 C++实现代码 内容提要 本示例说明了如何使用分水岭方法对图像进行分割。 输出结果 C++实现代码 #include "itkImageFileReader.h" #include "itkImageFileWriter.h" #include "itkScalarToRGBPixelFunctor.h" # 来源:https://blog.csdn.net/it_xiangqiang/article/details/117092719

2022-01-07 19:14:09