自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 leetbook学习系列之:数组和字符串

基于数组的在计算机内存连续存储,有下标索引,且每个元素占内存空间大小相等的特点,来设计数组元素的操作方法。二维数组:本质上还是一维数组,只是这个一维数组的每个元素又是一维数组。用来处理矩阵相关的实际问题。集合:由一个或多个元素构成的整体。就是将一组事物组合在一起。列表:又叫线性列表。按照一定顺序排列而成的有限序列。数组:是列表的实现方式之一。

2024-04-04 09:06:36 175

原创 C语言排序算法

从左到右,相邻元素进行比较。n个元素,需要n轮比较;每轮需要n - i -1次两两比较。从下到大排序为例:1)经过第一轮的比较,就可以找到最大的元素,并将它移动到最后一个位置。2)第一轮结束后,继续第二轮。仍然从数组头部开始比较,让较大的元素逐渐往后移动,直到数组的倒数第二个元素为止。经过第二轮的比较,就可以找到次大的元素,并将它放到倒数第二个位置。3)以此类推,进行 n-1(n 为数组长度)轮“冒泡”后,就可以将所有的元素都排列好。每比较一轮,就会找到序列中最大的一个或最小的一个。

2024-03-31 22:41:20 133

原创 Leetcode刷题---daily一练---编程基础从0到1题库

需要强制类型转换成char。方法二:求字符对应的asii码值和。刷题时间:20240324。刷题时间:20240325。刷题日期:20240326。刷题时间20240327。方法一:计算字符的个数。

2024-03-24 23:01:37 103

原创 Wi-Fi sta扫描连接过程

AP 收到 Assoc Req 帧后,最终确认 STA 的 Listen Interval 自己能不能接受,能力信息是否匹配,如果一切 OK,回复 Assoc Rsp 帧,携带 AID(Association ID) 和 successful 信息,表明关联成功。如果采用的是 Open System 方式,即 TKIP/WPA/WPA2 方式,在 Auth 阶段其实没有进行身份认证的工作,在 Auth 阶段就决定把身份认证的工作放在当前 EAPOL 阶段了。如果选择了安全认证,还需要wpa2四次握手。

2024-03-06 23:36:44 805

原创 0 Wi-Fi基础

多链路操作 (MLO) 是 Wi-Fi 7 (802.11be) 规范中的主要功能。无论是并发还是非并发,MLO 都是支持 Wi-Fi 7 的多链路设备 (MLD) 的一项强制性功能。

2024-03-06 22:35:39 332

原创 2. Android Wi-Fi并发

DBS:SCC:MCC:Android 12 引入了 Wi-Fi AP/AP 并发功能,允许设备创建两个接入点 (AP) 接口。借助此功能,设备可以通过双频同步 (DBS) Wi-Fi 热点(软 AP)支持网络共享。

2024-03-06 22:21:16 321

原创 1. Android Wi-Fi架构

使用 Wi-Fi 服务的应用通过 Binder 直接与各种 Wi-Fi 服务进行通信。支持在断开网络的情况下,在可信设备和应用之间共享高吞吐量数据。现在HIDL接口都是用aidl描述的。通过 HIDL 与 HAL 进行通信。Wi-Fi 服务在系统服务中运行。

2024-03-06 22:09:34 402

原创 C++ primer -- 顺序容器

容器:一些特定类型对象的集合每个容器都支持相等运算顺序容器:根据加入时的位置关联容器:根据关键字来存储和访问容器deque固定大小数组更安全更容易使用。

2023-06-01 22:05:50 46

原创 c语言结构体基础 + 难点梳理

概述结构体跟数组完全不一样,许多特性反而跟基本类型一致; 声明时,成员以分号结尾,赋值时则以逗号隔开; 长度计算,根据内存存储图来思考: 成员起始地址为期所占内存的整数倍 总占内存数为成员最大基类型(不包括扩展类型)的整数倍 所以定义结构体时要考虑成员间的顺序,以便减少无效内存占用 结构体变量名就是所有成员的集合,需要其地址的话要用&结构体名1. 结构体基本语法代码 1 /* 2 * author: tianqiang 3 * date :202..

2023-05-01 23:25:04 132

原创 C++Primer Plus-第七章 C++编程模块学习

1. 当且仅当用于函数头或函数原型中时,int* array和int array[]含义才是相同的。都意味着array是一个int型指针。一般当指针指向数组的第一个元素时,用数组表示法,而指向一个独立值时,用指针表示法。2. array[i] = *(array + i):表示数组第i个元素的值 &array[i] = array + i:表示数组第i个元素的地址。3. 数组作为参数:实际并没有传递数组的内容,而是将数组的地址,元素种类,元素个数传递给函数。(常规变量传递的是copy,数组时,由于是地址

2022-06-26 21:58:30 363

原创 C++Primer Plus-第四章学习

基础知识点:数组:1. 定义数组时,size必须是编译时已知的:整型常量、const值、常量表达式。但是可以通过new动态数组来避开这个限制;2. 数组只能在定义时初始化。不能将一个数组赋值给另一个数组。3. C++大括号(列表)初始化是通用的初始化方式:可省略=,禁止缩窄精度。4. 数组替代品,更复杂灵活:动态数组替代品:模板类vector;静态数组替代品:模板类array。字符串:1. c-style字符串:存储在char数组中,必须是\0结尾,否则不是字符串。2. C++:string类库:使用指针处

2022-06-26 12:10:11 233

原创 SOA汽车软件架构

SOA软件架构,通过服务封装,实现网络连接、数据转换、业务逻辑三者间彻底解耦。每个服务都有唯一的身份标识,自发布,订阅其他服务,与其他服务通信。SOA架构可以最大化的实现软件复用:汽车ECU发展趋势: 整车架构:...

2022-06-12 22:35:42 733

原创 C语言struct + union + enum基础

概述:2. 结构体基本语法代码/* 2 * author: tianqiang 3 * date :2022/0518 4 * description: 结构体基本语法 5 * 1)结构体类型声明时,成员结尾为分号; 6 * 2)整体赋值时,成员间以逗号隔开; 7 * 3)编译器会隐式的自动地址对齐 8 * 4)成员的起始地址为其所占内存的..

2022-05-19 23:12:18 314

原创 C语言---数组难点梳理

概述:C语言的语法不能靠死记硬背,而是需要理解,真正理解了背后的原理,C数组的难点也就不攻自破了。特别需要重点深入理解甚至死记的知识点如下:计算机内存被分成一个个的内存单元,每个单元大小为一个字节,给每个单元一个编号就是这个单元的地址,地址也被称为指针。所以是否可以重新赋值就涉及到地址是否可以重新赋值,还有就是地址指向的值是否可以重新赋值。 数组占有连续的内存单元,所以非常适合指针操作(copy等操作效率更高),所以数组名会被编译器自动隐式的转换成常量指针(有两个例外:对数组名取地址时;sizeo

2022-05-12 22:45:17 836

原创 C pointer learn

C指针学习:指针:1)指针是一个变量,其值为另一个变量的地址;2)不同类型的指针输出结果:函数指针:

2022-05-11 23:08:11 41

原创 Linux基础学习

1. Linux系统启动启动可以分为5个过程:1.1 内核的引导当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。1.2 运行 init。init 进程是系统所有进程的起点,没有这个进程,系统中任何进程都不会启动。init 程序首先是需要读取配置文件。init进程的一大...

2022-03-12 21:30:26 40

原创 如何提升码代码能力方法论漫谈

码代码其实跟写文章有几分类似。我们从小就学习写作文,基于学习写作文的经验,我总结了码代码能力提升学习的思路和步骤如下:思路:长期的阅读别人的源码,长期的维护重构自己的源码,最终做到码代码能力质的提升。步骤:1)先把基础语法学透:语法范例一定吃透,为以后熟练巧妙的使用做好坚实的基础。2)阅读学习别人的源码:源码的框架思想,重点感悟,为以后自己组织自己的框架做好基础。3)模仿,借鉴比人的源码,实现自己的功能,为以后自我创新出自己的代码做好基础。4)真正写出自己的代码:落地,真正把学...

2020-07-05 00:01:39 2345

原创 浪潮之巅-读后感

《浪潮之巅》这本书,草草翻阅感觉就是科技企业的一部兴衰史,介绍了各个时代引领浪潮的伟大企业如何在时代的大潮里走上巅峰,又如何在浪潮退却时步入低谷甚至沦落到被收购的结局;细细品读却感触颇深,企业从发展到极度辉煌再到衰败,不就是自然界万事万物兴衰的体现吗?“站在风口上,猪都可以飞上天”,所以这些伟大的企业其实都是找到了属于自己的风口,一步步走向辉煌,但是当风口过后,是否还能够保持自己的领先地位,才...

2019-12-20 22:05:50 795

原创 shell learning

1. shell简介:1.1 什么是shellShell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 脚本(shell script),是一种为 shell 编写的脚本程序。业界说的shell通常指的是shell脚本。本文介绍的是bash shell,所以编写脚本时需要在首行:#!/bin/bash...

2019-12-04 22:31:08 99

原创 Internet网络学习

计算机网络基础学习网络分成三大类,三网融合电信网络:电话、电报、传真。 有线电视网络:电视节目。 计算机网络:计算机间传输数据。计算机网络组成:节点(node)和链接节点的链路(link)。 互联网工作方式上分成两大块: 边缘部分:互联网上的所有主机。进行通信资源共享。 核心部分:网络和链接网络的路由器。为边缘部分提供连通...

2019-09-25 21:49:34 184

原创 C语言基础入门学习

C语言学习C语言思想:程序:计算机可以识别和执行的指令。程序 = 数据结构 + 算法 编码:将已经设计好的算法用计算机语言表示出来。 结构化程序设计方法:自顶向下,逐步细化,模块化设计,结构化编码。C语言基础:符号常量:用大写表示,不占用内存,故不能赋以新值。#define PI 3.14 预编译指令,仅仅做替换,预编译结束后符号常量就不存在了,因为被替换掉了。 常...

2019-09-25 21:43:04 305

原创 自我学习计划

工作学习计划 --- 程序员自我专业素养提升qjq-20190924明确:所有的一切都是为代码质量服务,没有代码质量一切都没有意义。整体规划:强化执行力才是根本按理想状态整理简历,以简历内容为目标坚持学习,学习一定程度后,积极投递简历多参加面试,总结积累经验改进简历内容继续坚持学习,良......

2019-09-25 21:26:42 50

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除