C语言二级查漏补缺

直接拿错过的选择开始补知识点

二叉树

推荐视频

基础名词讲解

  1. 根节点(Root):二叉树的顶端节点,没有父节点。
  2. 子节点(Children):每个节点下面的节点。对于二叉树来说,每个节点最多有两个子节点。
  3. 叶节点(Leaf):没有子节点的节点。
  4. 父节点(Parent):一个节点上面的节点。
  5. 兄弟节点(Siblings):共享同一父节点的节点。
  6. 深度(Depth):从根节点到该节点的唯一路径上的边的数量。
  7. 高度(Height):节点的高度是指从该节点到最远叶节点的最长路径上的边的数量。整个树的高度是其根节点的高度。
  8. 层(Level):节点的层级,根节点位于第1层。
  9. 二叉树的是指节点拥有的子节点的最大数量

 具体来说:

  • 度为0的节点称为叶子节点(Leaf),没有子节点。
  • 度为1的节点有一个子节点。
  • 度为2的节点有两个子节点,这是二叉树节点的最大度数。

 在二叉树中,节点的度可以是0、1或2,但整个二叉树的度定义为2,因为这是树中任何节点的最大可能子节点数。

耦合性、内聚性名词意思

耦合性:模块间互相连接的紧密程度

内聚性:一个模块内部各元素间彼此结合的紧密程度 

这里可以这么理解:

耦合就好比中国市场与国际市场的联系(一个主体与其他主体之间关系)

内聚就好比中国内部各地方市场之间的联系(一个主体内部各元素之间关系)

这里往深了说有很多,甚至牵扯到控制原理以及软件工程(开个坑先)

关系矩阵

这里是数据库的知识(本人学的程序设计所以第一次做一脸懵) 

选择是针对(数据记录)的(三行结果选其中几行数据记录)

投影是针对(属性)的(三列数据投影过去几列属性)

 

整型变量初始化为0

static静态变量可以做到默认在未赋值情况取0

auto未赋值情况是默认的瞎取(平时int a等价于auto int a)

register是用寄存器存储某个变量(用的很少)

位运算

以下是C语言中可用的位运算符及其用途:

  1. 按位与(&)

    • 运算规则:两个位都为1时,结果为1,否则为0。
    • 示例:5 & 3 的结果是 1
      0101 (5的二进制)
      0011 (3的二进制)
      ----
      0001 (结果为1)
      
  2. 按位或(|)

    • 运算规则:两个位中只要有一个为1,结果就为1,否则为0。
    • 示例:5 | 3 的结果是 7
      0101 (5的二进制)
      0011 (3的二进制)
      ----
      0111 (结果为7)
      
  3. 按位异或(^)

    • 运算规则:两个位不同,结果为1,相同则为0。
    • 示例:5 ^ 3 的结果是 6
      0101 (5的二进制)
      0011 (3的二进制)
      ----
      0110 (结果为6)
      
  4. 按位取反(~)

    • 运算规则:将位从0变为1,或将位从1变为0。
    • 示例:~5 的结果是 6(假设是8位系统)。
      0101 (5的二进制)
      ----
      1010 (结果为~5,即-6)
      
  5. 左移(<<)

    • 运算规则:将位向左移动指定的位数,右侧补0。
    • 示例:5 << 1 的结果是 10
      0101 (5的二进制)
      ----
      1010 (结果为10)
      
  6. 右移(>>)

    • 运算规则:将位向右移动指定的位数,左侧根据符号位进行填充(对于无符号类型,左侧补0)。
    • 示例:5 >> 1 的结果是 2
      0101 (5的二进制)
      ----
      0010 (结果为2)

其中左移右移有快速计算的方法,不用背数字的二进制

左移n位-->原数字乘以2的n次幂

右移n位-->原数字除以2的n次幂

函数传参是复制

在c语言里面,函数的参数是复制过来的,还有就是指针的坑

这里就是int *c是个坑

这道题可以看看这篇博客 ,就会发现上面这个写法啥也不是,把两种杂糅在一起,当然就是什么也没交换(交换了也传不出来结果)

交换了但是没有从函数中传出来

 

正确的交换(注意中间变量t的类型不是指针),只有这个相当于真正的修改了指针指向的内容

这次是指针的变化没有传出来

总结

二级坑还挺多,建议假期多去bilibili逛逛刷刷课,想要考前速通不太可能

以上均是本人理解,如有错误欢迎各位大佬评论区指出~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/956580.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Low-Level 大一统:如何使用Diffusion Models完成视频超分、去雨、去雾、降噪等所有Low-Level 任务?

Diffusion Models专栏文章汇总:入门与实战 前言:视频在传输过程中常常因为各种因素(如恶劣天气、噪声、压缩和传感器分辨率限制)而出现质量下降,这会严重影响计算机视觉任务(如目标检测和视频监控)的性能。现有的视频修复方法虽然取得了一些进展,但通常只能针对特定的退…

【22】Word:小李-高新技术企业政策❗

目录 题目​ NO1.2 NO3 NO4 NO5.6 NO7.8 NO9.10 若文章中存在删除空白行等要求&#xff0c;可以到最后来完成。注意最后一定要检查此部分&#xff01;注意&#xff1a;大多是和事例一样即可&#xff0c;不用一摸一样&#xff0c;但也不要差太多。 题目 NO1.2 F12Fn&a…

【前端】CSS学习笔记(1)

目录 CSS的简介CSS的概念语法 CSS的引入方式内联样式&#xff08;行内样式&#xff09;内部样式外部样式&#xff08;推荐&#xff09; 选择器全局选择器元素选择器类选择器ID选择器合并选择器后代选择器子选择器相邻兄弟选择器通用兄弟选择器伪类选择器:link:visited:hover:ac…

C#与AI的共同发展

C#与人工智能(AI)的共同发展反映了编程语言随着技术进步而演变&#xff0c;以适应新的挑战和需要。自2000年微软推出C#以来&#xff0c;这门语言经历了多次迭代&#xff0c;不仅成为了.NET平台的主要编程语言之一&#xff0c;还逐渐成为构建各种类型应用程序的强大工具。随着时…

几何数据结构之四叉树与八叉树

几何数据结构之四叉树与八叉树 四叉树的定义四叉树深度的计算公式推导假设&#xff1a;计算过程&#xff1a;1. 划分空间&#xff1a;2. 节点容纳的最小距离&#xff1a;3. 解出深度&#xff1a;4. 考虑常数项&#xff1a; 总结&#xff1a; 八叉树 四叉树的定义 四叉树&#…

机器学习中的方差与偏差

文章目录 方差与偏差1.1 数据1.1.1 数据的分布1.1.2 拟合 1.2 方差与偏差1.2.1 泛化误差的拆分1.2.2 理解方差偏差 1.3 方差-偏差trade-off1.3.1 方差-偏差trade-off1.3.2 方差与偏差诊断 1.4 降低策略1.4.1 噪声1.4.2 高偏差1.4.3 高方差 方差与偏差 1.1 数据 1.1.1 数据的分…

Weblogic - General - 弱口令 任意文件读取漏洞

0x01&#xff1a;漏洞简介 首先需要说明&#xff0c;本文并不是介绍了 Weblogic 某一 CVE 漏洞&#xff0c;而是提供了一种通用的测试思路。 0x0101&#xff1a;弱口令漏洞 弱口令漏洞主要是由于用户安全意识淡薄&#xff0c;为了便于记忆&#xff0c;设置了强度过低的密码&…

C#中的语句

C#提供了各式各样的语句&#xff0c;大多数是由C和C发展而来&#xff0c;当然&#xff0c;在C#中做了相应修改。语句和表达式一样&#xff0c;都是C#程序的基本组成部分&#xff0c;在本文我们来一起学习C#语句。 1.语句 语句是构造所有C#程序的过程构造块。在语句中可以声明…

VLAN基础理论

VLAN V&#xff1a;Virtual(虚拟) LAN ——局域网 VLAN ——虚拟局域网(虚拟广播域&#xff1a;交换机和路由器协同工作后&#xff0c;将原来的一个广播域&#xff0c;逻辑上切分为多个。) VLAN的配置我们基于以下拓扑进行&#xff1a; PC1-4的IP地址依次为192.168.1.1-192.168…

基于SpringBoot的健身房管理系统【源码+文档+部署讲解】

系统介绍 基于SpringBootVue实现的健身房管理系统采用前后端分离架构方式&#xff0c;系统设计了管理员、会员、员工三种角色&#xff0c;系统实现了用户登录与注册、个人中心、会员管理、员工管理、会员卡管理、会员卡类型管理、教练信息管理、解聘管理、健身项目管理、指导项…

C++ 模拟真人鼠标轨迹算法 - 防止游戏检测

一.简介 鼠标轨迹算法是一种模拟人类鼠标操作的程序&#xff0c;它能够模拟出自然而真实的鼠标移动路径。 鼠标轨迹算法的底层实现采用C/C语言&#xff0c;原因在于C/C提供了高性能的执行能力和直接访问操作系统底层资源的能力。 鼠标轨迹算法具有以下优势&#xff1a; 模拟…

搭建一个基于Spring Boot的校园台球厅人员与设备管理系统

搭建一个基于Spring Boot的校园台球厅人员与设备管理系统可以涵盖多个功能模块&#xff0c;例如用户管理、设备管理、预约管理、计费管理等。以下是一个简化的步骤指南&#xff0c;帮助你快速搭建一个基础的系统。 — 1. 项目初始化 使用 Spring Initializr 生成一个Spring …

Langchain+FastApi+Vue前后端Ai对话(超详细)

一、引入 首先可以先看下作者的文章 FastApi相关文章&#xff1a;创建最简单FastApi的项目Vue相关文章&#xff1a;最简单的aixos二次封装Langchain相关文章&#xff1a;如何使用LangSmith跟踪deepseek模型 二、后端搭建 1 项目文件结构 routers&#xff1a;存放api接口se…

图像去雾数据集的下载和预处理操作

前言 目前&#xff0c;因为要做对比实验&#xff0c;收集了一下去雾数据集&#xff0c;并且建立了一个数据集的预处理工程。 这是以前我写的一个小仓库&#xff0c;我决定还是把它用起来&#xff0c;下面将展示下载的路径和数据处理的方法。 下面的代码均可以在此找到。Auo…

Java中json的一点理解

一、Java中json字符串与json对象 1、json本质 json是一种数据交换格式。 常说的json格式的字符串 > 发送和接收时都只是一个字符串&#xff0c;它遵循json这种格式。 2、前后端交互传输的json是什么&#xff1f; 前后端交互传输的json都是json字符串 比如&#xff1a;…

React实现拖拽特效

前言 最近&#xff0c;我看到一个工程师的个人网站上&#xff0c;采用了拖拽作品集的互动特效&#xff0c;既有趣又吸引眼球。经过一些研究&#xff0c;我发现其实借助一些现成的套件&#xff0c;就能轻松实现这样的效果。今天就带大家一起看看&#xff0c;如何通过 Framer Mo…

leetcode904-水果成篮

leetcode 904 时间复杂度&#xff1a;O(n) 空间复杂度&#xff1a;O(1) 之前发布了一个滑动窗口的题目解答思路&#xff0c;参考博文&#xff1a;长度最小的子数组 本题也是基于滑动窗口的一个扩展题&#xff0c;主要解决方法是利用滑动窗口哈希表 var totalFruit function…

线性代数概述

矩阵与线性代数的关系 矩阵是线性代数的研究对象之一&#xff1a; 矩阵&#xff08;Matrix&#xff09;是一个按照长方阵列排列的复数或实数集合&#xff0c;是线性代数中的核心概念之一。矩阵的定义和性质构成了线性代数中矩阵理论的基础&#xff0c;而矩阵运算则简洁地表示和…

李宏毅机器学习HW1: COVID-19 Cases Prediction

Kaggle数据集和提交链接 特征选择&#xff08;主要修改地方&#xff09; 在sample code的基础上主要修改了Select_feat选择特征函数。 首先&#xff0c;因为数据集中的第一列是id&#xff0c;先在raw_x_train&#xff0c;raw_x_valid&#xff0c;raw_x_test中都去掉这一列。其…

owasp SQL 注入-03 (原理)

1: 先看一下注入界面: 点submit 后&#xff0c;可以看到有语法报错&#xff0c;说明已经起作用了: 报如下的错误: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near at line 1 2:…