华为六大根技术服务器端1.CPU:鲲鹏(Kunpeng)2.操作系统:OpenEuler3.数据库:OpenGauss移动端4.芯片:麒麟(Kirin)5.操作系统:鸿蒙(HarmonyOS)人工智能6.NPU:昇腾(Ascend)7.AI框架:昇思(MindSpore)看得见的是产品,看不见的是背后的基础研究和技术创新。根技术是技术树之根,持续为技术树提供滋养,决定企业的荣枯。华为技术有限公司在全球有超80+基础技术实验室,170+联合实验室、创新实验室;研发人员11.4万名,占比55.4%,每年研发投入占销售收入>10%,全球持有有效专利超12万件。在美国的极限施压下,聚焦根技术创新,立根
文章目录⚽冒泡排序⚾算法步骤🎨算法优化🥎代码实现:🏀冒泡排序的特性总结🧭快速排序⚽算法思路📌思路一(Hoare版)📌思路二(挖坑法)📌思路三(前后指针)🎨代码实现:🌳快速排序优化📌规模较小时的优化📌三数取中法🏀快速排序非递归实现🚩代码实现:🎡快速排序特性总结🥎归并排序⚽基本思想🏀算法步骤🛫代码实现:😎递归实现归并排序🛬归并排序特性总结🌴海量数据的排序问题🐱🏍排序算法复杂度及稳定性分析⭕总结⚽冒泡排序==冒泡排序(BubbleSort)==也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,
文章目录🍀排序的概念及引用🐱👤排序的概念🐱👓排序运用🐱🐉常见的排序算法🌴插入排序🎋基本思想:🛫直接插入排序📌算法步骤:📌代码实现:📌直接插入排序特性:🛬希尔排序(缩小增量排序)📌算法步骤:📌代码实现:📌希尔排序的特性总结🌳选择排序🎋基本思想🛫直接选择排序🚩算法步骤:🚩代码实现:🚩直接选择排序的特性总结🎄堆排序🚩算法步骤🚩代码实现:🚩堆排序的特性总结⭕总结🍀排序的概念及引用🐱👤排序的概念排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在
一、七大核心参数1.corePoolSize 核心线程数2.maximumPoolSize 最大线程池参数3.keepAliveTime 任务结束后,线程存活此处指定时间后才会被释放4.TimeUnit 上一个参数的单位,常用s,ms5.BlockingQueue 队列,当核心线程用完时,任务放进队列6.ThreadFactory 线程工厂7.丢弃策略 默认Abort,直接丢弃,并抛出异常二、线程池原理所有线程池,刚创
稳定性:待排序的序列中若存在值相同的元素,经过排序之后,相等元素的先后顺序不发生改变,称为排序的稳定性。思维导图:(排序名称后面蓝色字体为时间复杂度和稳定性)1.直接插入排序核心思路每次从无序区间中选择第一个元素,插入到有序区间的合适位置,直到整个数组有序。排序步骤定义下标i为当前无序区间的第一个元素,i-1表示有序区间的最大值,下标j从后往前遍历有序区间。有序区间:[0…i)无序区间:[i…n)若arr[i]>arr[i-1],直接将arr[i]纳入有序区间即可。若arr[i]代码publicstaticvoidinsert(int[]arr){//有序区间:[0,i)//无序区间:[i,n
“推动业务”是数据人最怕的词了。妈耶,还推动业务呢,我自己不被业务部门天天追着屁股要数就不错了,咋个推动法。可领导们最喜欢提这种要求。今天我们就来详细聊聊。首先要分清的是,提这个问题的人是谁,很重要。问:以下两种情况有什么区别?A、业务部门领导问:数据分析,如何推动业务发展?B、数据部门领导问:数据分析,如何推动业务发展?答:主导权不一样。业务部门问了建议,可以直接去落地。数据部门只是个辅助,说的话如果不对业务胃口,就永远悬在天上。就像开车,抓方向盘的人听了建议能换路线,坐副驾驶的哔哔太多,很容易遭嫌弃。所以提问人不同,应对思路是不一样的。今天我们先讲业务来提问。01、推动业务的错误做法很多同
1.概念1.排序的稳定性常见的稳定的排序有三种:直接插入排序,冒泡排序,归并排序对于一组数据元素排列,使用某种排序算法对它进行排序,若相同数据之间的前后位置排序后和未排序之前是相同的,我们就成这种排序算法具有稳定性单看单个属性的稳定性并无意义,稳定性主要体现在对具有多个属性的对象进行排序时才有意义假设一个订单对象有两个属性,分别是下单时间与下单金额:此时我们有一个需求,就是按照订单金额从高到低排序,若金额相同,则按照下单的先后时间排序方法一:就是先按照订单金额大小排序,然后把金额相同的订单再次按照时间排序,但是这样就需要进行多次排序方法二:如果我们先把订单按照下单时间的先后排好序,然后再按照订
设计模式的目的编写软件过程中,程序员面临着来自,耦合性,内聚性以及可维护性,扩展性,重用性等方面的挑战。设计模式是为了让程序,具有更好的1.代码重用性(相同代码,不用重复编写)2.可读性(编程规范性,便于其他程序员的阅读和理解)3.可扩展性(当需要增加新的功能时,非常的方便)4.可靠性(当我们增加新的功能后,对原有的功能没有影响)5.使程序呈现高内聚,低耦合的特性设计模式(designpattern)包含了面向对象的精髓,"懂了设计模式,你就懂了面向对象分析和设计的精要"。学习设计模式,更多的是学是一种设计和分析的思想。七大原则设计模式的原则,其实就是程序员在编程时,应当遵守的原则,也是各种设
文章目录一、前言二、操作系统学科下的进程状态1、运行状态2、阻塞状态3、挂起状态三、Linux下的7种进程状态1、运行状态R2、浅度睡眠状态S3、深度睡眠状态D一场有趣的官司4、停止状态T5、进程跟踪状态t6、死亡状态X7、僵死状态Z——两个特殊进程①僵尸进程②孤儿进程四、总结与提炼一、前言Hello,大家好,本文我们所要介绍的是有关Linux下的进程状态在上一文中,我们重点介绍了有关Linux下进程的基本概念,了解了什么是进程、怎么去描述并组织进程、创建一个进程。在本文中,我们将先通过了解操作系统学科下的进程状态,对进程的状态有一个基本的概念,然后呢再去学习Linux下的7种进程状态,学习这
文章目录插入排序直接插入排序希尔排序选择排序选择排序堆排序交换排序冒泡排序快速排序hoare版挖坑法前后指针法快速排序的递归展开图快速排序的优化三数取中法快速排序的非递归实现归并排序插入排序插入排序分为直接插入排序和希尔排序,其中希尔排序是很值得学习的算法希尔排序的基础是直接插入排序,先学习直接插入排序直接插入排序直接插入排序类似于打扑克牌前的整牌的过程,假设我们现在有2453四张牌,那么应该怎么整牌?方法很简单,把3插到2和4中间,这样就完成了整牌的过程,而插入排序的算法就是这样的过程插入排序的基本原理图如下所示我们在这里定义end为已经排查结束的,排好序的一段数据的最后一个元素,tmp作为