[RATS]week-2

2024-02-07 05:40
文章标签 week rats

本文主要是介绍[RATS]week-2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

[RATS]week-2

  • Algorithm
  • Review
    • 原文-Main Projects
    • 翻译-关键项目
  • Tips - MySQL 查询语句执行顺序
      • Server 层
        • 连接器
        • 查询缓存
        • 分析器
        • 优化器
        • 执行器
  • Share - 未来五大变成语言

Algorithm

给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。
请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。
你可以假设 nums1 和 nums2 不会同时为空。

示例 1:
nums1 = [1, 3]
nums2 = [2,4,5]
则中位数是 3.0
示例 2:
nums1 = [1, 2]
nums2 = [3, 4]
则中位数是 (2 + 3)/2 = 2.5

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/median-of-two-sorted-arrays
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

  public static double findMedianSortedArrays(int[] nums1, int[] nums2) {int medianCeilIndex, medianFloorIndex, arrayTotalLength;arrayTotalLength = nums1.length + nums2.length;if ((nums1.length + nums2.length) % 2 == 0) {medianFloorIndex = arrayTotalLength / 2 - 1;medianCeilIndex = arrayTotalLength / 2;} else {medianFloorIndex = (int) Math.floor(arrayTotalLength / 2);medianCeilIndex = medianFloorIndex;}int[] numArraySorted = new int[arrayTotalLength];int cursor = 0;System.arraycopy(nums1, 0, numArraySorted, 0, nums1.length);System.arraycopy(nums2, 0, numArraySorted, nums1.length, nums2.length);int tmpMax, nextLength = arrayTotalLength;while (nextLength > 0) {while (cursor + 1 < nextLength) {if (numArraySorted[cursor] > numArraySorted[cursor + 1]) {tmpMax = numArraySorted[cursor];numArraySorted[cursor] = numArraySorted[cursor + 1];numArraySorted[cursor + 1] = tmpMax;}cursor++;}cursor = 0;nextLength--;}return (numArraySorted[medianCeilIndex] + numArraySorted[medianFloorIndex]) / 2.0;}

Review

原文-Main Projects

Spring Cloud Config
Centralized external configuration management backed by a git repository. The configuration resources map directly to Spring Environment but could be used by non-Spring applications if desired.
配置
Git仓库支持的外部集中式配置管理。配置的资源映射到Spring环境,但如果需要也可以使用在非Spring应用程序

Spring Cloud Netflix
Integration with various Netflix OSS components (Eureka, Hystrix, Zuul, Archaius, etc.).
Spring Cloud 网元
各种网元OSS(Object Storage Service)组件(Eureka, Hystrix, Zuul, Archaius, etc.等)

Spring Cloud Bus
An event bus for linking services and service instances together with distributed messaging. Useful for propagating state changes across a cluster (e.g. config change events).
总线
事件总线通过分布式消息链接各服务与服务实例。事件总线针对集群间的传播状态的改变非常有用(例如配置表更事件)。

Spring Cloud Cloudfoundry
Integrates your application with Pivotal Cloud Foundry. Provides a service discovery implementation and also makes it easy to implement SSO and OAuth2 protected resources.
云结构
可以通过关键性的云结构合并应用程序。提供发现实现的服务并且也可简单的实现单点登陆SSO和OAuth2受保护资源。

Spring Cloud Open Service Broker
Provides a starting point for building a service broker that implements the Open Service Broker API.
开放式服务代理
提供起点来建造实现开放式服务代理API的服务代理

Spring Cloud Cluster
Leadership election and common stateful patterns with an abstraction and implementation for Zookeeper, Redis, Hazelcast, Consul.
集群
通过抽象领导选择与普遍的状态模式,实现Zookeeper,Redis,Hazelcast Consul.

Spring Cloud Consul
Service discovery and configuration management with Hashicorp Consul.
Consul
Consul是HashiCorp公司推出的开源软件,使用GO语言编写,提供了分布式系统的服务注册和发现、配置等功能,这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网格。Consul不仅具有服务治理的功能,而且使用分布式一致协议RAFT算法实现,有多数据中心的高可用方案,并且很容易和Spring Cloud等微服务框架集成,使用起来非常的简单,具有简单、易用、可插排等特点。使用简而言之,Consul提供了一种完整的服务网格解决方案 。

翻译-关键项目

Tips - MySQL 查询语句执行顺序

在这里插入图片描述
MySQL 分为 Server层存储引擎层两部分
Server层
包括连接器、查询缓存(5.X版本,8.0版本已经无此功能)、分析器、优化器、执行器等,涵盖MySQL的大多数核心服务功能,及所有的内置函数(日期、时间、加密函数等)。所有跨存储引擎的功能都在这一层实现,入存储过程、触发器、视图等
存储引擎层
负责数据的存储和提取。架构模式是插件式的,支持InnoDB、MyISAM、Memory等多个存储引擎。也是5.5版本以后成为了默认存储引擎。

Server 层

连接器

负责跟客户端建立链接获取权限和管理链接

mysql -h127.0.0.1 -P3306 -uroot -p
查询缓存

MySQL拿到一个查询请求后,会先到查询缓存匹配,之前是否执行过这条语句。之前执行过的语句及其结果可能会议key(SQL语句)-value(查询结果)对的形式,直接存在内存中.
但查询缓存的失效非常频繁,只要对一个表更新,这个表上所有的查询缓存都会被清空。
建议按需使用:query_cache_type = DEMAND

Select SQL_CACHE * From Table
分析器

分析器先会做词法分析,然后做语法分析。语句不对会收到You hava an error in your SQL syntax的错误提醒

优化器

优化器是在表里有多个索引的时候,决定使用哪个索引。或在一个语句有多表关联的时候,决定各个表的链接顺序。

执行器

MySQL通过分析器知道了你要做什么,通过优化器知道了该怎么做,于是就进入了执行器阶段,开始执行语句。
开始执行的时候,
(1) 验证权限:先判断当前连接用户对这个表有没有执行查询的权限,如果有没有,返回没有权限的错误。
(2) 打开表:执行器就会根据表的引擎定义(如InnoDB),去使用这个引擎提供的结构.
(3) 逐行或根据索引,逐条返回符合查询条件的结果

以上摘自极客时间-《MySQL实战45讲》

Share - 未来五大变成语言

Swift
苹果公司希望淘汰 Objective-C 这一专为苹果生态系统打造的、已然“35 岁高龄”的编程语言,而继任者无疑正是五年前才刚刚诞生的 Swift 语言。根据分析公司 RedMonk 发布的长期语言排名,苹果的目标似乎正在顺利实现,Swift 自面世以来就一直保持着良好的增长势头。

话虽如此,Objective-C 表示自己还能抢救一下,而为其续命的正是过去三十年来产生的大量遗留代码。不过随着苹果的有力推动,其最终必然消失,而 Swift 将成为构建苹果应用的唯一支柱。苹果公司对于跨平台应用开发的整体规划,也将进一步加快 Swift 语言的普及速度。

Kotlin
Kotlin 正在崛起,而且可以说是必然崛起。十年之前,世界上还有一个“Kotlin”,一座俄罗斯属小岛。但如今,这款由谷歌公司全力支持的编程语言已经成为 Android 平台上的一流开发语言。
有些朋友可能会说,谷歌公司之所以选择 Kotlin,主要是为了减少对 Java 的依赖以及由此引发的同甲骨文之间的严重法律纠纷。这当然很对,而且不管谷歌方面的律师怎么想,开发人员对 Kotlin 也确实非常青睐,他们真心喜欢 Kotlin 丰富的功能与出色的灵活性。
早在 2018 年,Pusher 就发起过一项开发人员调查,发现 Kotlin 的使用正在呈指数级增长,而这在很大程度上要归功于 Android 的力挺。Pusher 在随数据发布的一份说明中补充称,“大部分开发人员都计划在自己的当前工作以及辅助项目当中使用 Kotlin 语言。说起最受人喜爱的功能,大多数人欣赏 Kotlin 出色的安全性——超过八成开发人员夸赞了其 null 安全性;其次是扩展功能,Kotlin 显著简化了 Java 互操作性与数据类。”
换句话说,Kotlin 似乎很快就将走向人生巅峰。最大的问题是,这种编程语言是否能够扩展到 Android 生态系统之外。我们将继续关注它开疆辟土的动向。

Python
没错,Python 拥有巨大的群众基础,为世界各的开发人员所接受并用于实现各类用途。而且根据 TIOBE 指数(每月更新),Python 的普及度只会越来越高,并不断蚕食其它语言的生存空间。事实上,开发人员与专业技术人员仍在持续发现 Python 的新用途,特别是数据分析与机器学习。
鉴于 Python 已经拥有庞大的用户群以及深深植根的业务基础,其接下来的发展态势可谓非常乐观。唯一的问题在于,这位编程语言中的翘楚还有多大增长空间,未来又将在哪些领域占据主导。

Groovy
Groovy 在 TIOBE 排名上的位置也在不断上升,其拥有广泛的 IDE 支持,与 Java 非常相似,而且能够同高人气开源自动化服务器方案 Jenkins 顺畅集成。它已经成为众多系统中的“编程语言粘合剂”,这也使其拥有着光明的发展前景。

TypeScript
在这里,我们姑且将 TypeScript 称为编程语言。没错,它实际上只是 JavaScript 的一个超集,有些开发人员可能认定它不能算是“完整”的编程语言,因为我们完全可以将其转换为 JavaScript 形式。
不管如何定义,RedMonk 与 GitHub 的 Octoverse 报告都认定 TypeScript 正在崛起。去年夏季,TIOBE 甚至指出 TypeScript 已经开始蚕食老大哥 JavaScript 的市场份额。
因此无论您是否将 TypeScript 视为一种“经过改进的新型”JavaScript,它都在吞噬其它旧有语言的生存空间,而且众多专业技术人员都坚信 TypeScript 将在未来几年内迎来快速发展。

这篇关于[RATS]week-2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/686671

相关文章

MATH36022 Numerical Analysis 2 Approximation of Functions – Week 3 Exercises

Show that the Chebyshev polynomials are orthogonal on ( − 1 , 1 ) (−1, 1) (−1,1) with respect to the weight function ( 1 − x 2 ) − 1 / 2 (1 − x^2)^{−1/2} (1−x2)−1/2. Ans: T n ( x ) = cos ⁡ ( n arcc

MATH36022 Numerical Analysis 2 Approximation of Functions – Week 2 Exercises

Attempt these exercises in advance of the tutorial in Week 3 Find the best L ∞ L_\infin L∞​ approximation to f ( x ) = x n + 1 + ∑ k = 0 n a k x k f (x) = x^{n+1} + \sum_{k=0}^na_kx^k f(x)=xn+1+∑k=

【Hello Python World】Week 2(1):列表简介

1 姓名3-2 问候语3-3 自己的列表3-4 嘉宾名单3-5 修改嘉宾名单3-6 添加嘉宾你刚找到了3-7 缩减名单3-8 放眼世界3-9 晚餐嘉宾3-10 尝试使用各个函数3-11 有意引发错误 第三章主要是介绍Python中的list,比较简单 3.1 姓名 将一些朋友的姓名存储在一个列表中,并将其命名为names 。依次访问该列表中的每个元素,从而将每个朋

【Hello Python World】Class Notes of Week 2

列表 (3.14 update) 1.数组下标错误会抛出异常(与C++不同)2.一个list里可以有不同的数据结构3.插入方法4.删除方法 第一种方法:pop(),有返回值第二种方法:del,没有返回值第三种方法:remove(),没有返回值,而且会抛出异常 5.操作方法 用sort()和sorted()从小到大排序翻转列表reverse()求长度len() 6.列表的数据处理 求和su

【Hello Python World】Week 1(1):探索 展望

什么是Python一些与学习Python有关的网站 wwwpythonorgwwwliaoxuefengcom廖雪峰老师的个人网站 对Python的展望 什么是Python Python的原型诞生于1989年圣诞节,著名的“龟叔”Guido van Rossum在当时为了打发无聊的圣诞假期,随手开发出这款语言。这个有点“无心插柳”的行为却给我们带来了这个简洁而强大工具。时

21—小结(Week)

一 、xutils的框架设计问题,他内部貌似采用的是线程池管理的,当线程池满的时候,其他的线程就会处于等待状态, 这时候如果界面的数据依赖网络请求结果的话,就会造成阻塞状态。 xutils的整个后台是基于ThreadPoolExecutor线程池来做的,该程序封装的线程池的最大连接数是10,所以每次new 一个httpUtils请求下载的时候,一个new 的请求对象最多download下

xamarn.android binding parse sdk for a week to work

Xamarin.Android PackageName 需要设置为项目命名空间且全小写。 http://blog.csdn.net/jameszhou/article/details/41806377

Coursera耶鲁大学金融课程:Financial Markets 笔记Week 02

Financial Markets 本文是学习 https://www.coursera.org/learn/financial-markets-global这门课的学习笔记 这门课的老师是耶鲁大学的Robert Shiller https://en.wikipedia.org/wiki/Robert_J._Shiller Robert James Shiller (born Ma

STAT315 Week 8 广义线性混合模型(GLMMs)

正如我们使用 LMM 对具有相关观测值的正态数据进行建模一样,我们可以使用 GLMM 对非正态分布且具有相关观测值的数据进行建模。 响应变量通常是离散的或明显非正态的。 GLMM 允许响应数据来自指数族的任何其他分布,包括最常见的二项分布和泊松分布。因此,GLMM 是具有正态分布随机效应的广义线性模型。 上图展示了广义线性混合模型(Generalized Linear Mixed Model

MongoDB聚合运算符:$week

MongoDB聚合运算符:$week 文章目录 MongoDB聚合运算符:$week语法使用举例 $week聚合运算符返回指定日期日期为一年中第几周的数字值为0到53之间。周从周日开始,第1周从一年的第一个周日开始。一年中第一个星期日之前的日期为第0周。这和 strftime标准库函数中的 "%U"操作符相同。 语法 { $week: <dateExpression