自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 经典算法题-交换一个二进制数的奇数位和偶数位

下次,当我们遇到这种有关二进制位的操作时,我们应该联想到& | ^这些操作符,以及逻辑左移,逻辑右移相关的操作,从而巧妙地进行求解。

2023-07-21 17:10:49 124 1

原创 经典面试题-有关offset的模拟实现

本题是让我们模拟offsetof这个宏的实现,所以当然我们不能直接套用原宏,需要我们手动实现。我们观察可得,offsetof宏共有两个参数,分别是type (结构体类型),以及number(结构体中某变量的名称)在做本题之前,我们应该掌握结构体的相关知识,其中最重要的就是内存对齐(面试常考),在这里我就不进行赘述,请同学们自行了解。这道题难就难在,我们在不知道首地址的情况下,如何计算元素的偏移。那么,突破点就在于此,既然我们不知道首地址,也就是说首地址不影响最终结果的大小,所以我们可以指定某个首地址,从而进

2023-07-21 16:53:08 105 1

原创 经典异或算法题详解

我们知道,两个二进制位相同,异或结果为0,相异,异或结果为1,那么,我们就可以得出,如果某位异或之后的结果为1,那么它们所对应的二进制为一定是不同的,我们可以根据这个思想,将该数组分为两部分,一部分是某个二进制位为1的,另一部分是某个二进制位为0的。在我们知道以上两个性质之后,我们就可以利用异或的思想来解决,遍历整个数组,将他们都异或在一起,因为某个数跟他本身异或等于0,所以出现两次的数异或之后都是0,最终的结果就是我们要找的那个数。如果,我们将问题深入一些,将出现一次的数字从1变成2,又该如何思考呢?

2023-07-20 23:51:30 151

原创 惊!浮点数在内存中竟然是这么存储的?

大家好,上期文章给大家带来了关于那有同学可能会问了,了解这些有什么用呢,写代码的时候又用不上。我的回答是:学习计算机底层的知识非常有必要。你只有了解数据在内存中是如何存储的,你才能更好的去编写C语言相关的代码,并且在程序出现Bug的时候,你也知道如何去调试代码。因为C语言是可以直接对内存进行操作的一门编程语言,所以学习这些东西是非常有必要的。那么今天呢,我就给大家带来在进行讲解之前,我想先了解一下大家对这个知识的掌握程度。大家认为这个代码的输出结果是什么呢?

2023-06-01 16:19:35 200 6

原创 你知道整型数据在内存中是如何存储的吗?(新手小白必看)

在之前,我们学习过C语言的一些基本的内置类型char // 字符数据类型short // 短整型int // 整型long // 较长整型long long // 更长的整型float // 单精度浮点型double // 双精度浮点型你应该掌握的是,每个内置数据类型占据几个字节,这个我就不赘述了,但有一点,其中的long数据类型的字节数无法确定,只能确定他的字节数是比int类型大的,但是具体指我们无法得知。什么是大小端?

2023-05-27 18:56:36 569 8

原创 二分边界问题,你真的搞懂了吗?

作为竞赛或者面试中的常考题,二分的重要性不言而喻,但是你真的了解二分吗?有没有出现过逻辑混乱,对区间无从下手的情况呢,今天,我就来详细的讲解一下二分算法。我们通常使用二分算法是在数组中,比如给你一个有序且无重复元素的数组和一个目标值,要求你在数组中找到目标值,并返回其索引,当然这道题如果在时间和空间比较充裕的情况下,用暴力或者二分都可以,于是我们把两种情况都讲一下。

2023-05-23 12:06:19 142 1

原创 C语言结构体,你学会了吗?

有了结构体类型,那么如何进行定义并进行初始化呢,其实很简单。int x;int yint x;int y;}p1;// 声明类型的同时定义变量我们可以在声明类型的同时进行对变量的定义,但是要注意,这个时候的 p1 变量就是一个全局变量。int x;int yint main()我们同时也定义了一个结构体变量 p2,不同的是,p2就是一个局部变量,开辟在栈空间。注意:struct关键字千万不可省略。

2023-05-19 12:47:03 38 1

原创 秒杀C语言指针(二)

我们上篇文章讲解了指针的相关知识,但是并没有明确地把指针和数组放在一起来讲解,那么今天我们主要来讲讲指针和数组之间的关系首先,指针就是指针,,不是数组,是专门用来存放地址的。其次,数组就是数组,不是指针。它是一块连续的空间,用来存放一个或者多个相同数据类型的元素。但有同学可能会问了,他俩有什么关系?

2023-05-18 16:30:06 68 1

原创 秒杀C语言指针(一)

大家好,上次我们给大家带来了一个用C语言实现三子棋的小游戏,相信大家对数组以及循环也有了一些深刻的理解,那么今天,我们将开启一个新的篇章---指针。相信计算机专业的同学都对指针这个名词并不陌生,也都知道指针是C语言中相对重要且难度较大的一块内容,当然,不要慌,相信通过熊哥今天的讲解,让你对指针的理解更上一层楼,我们话不多说,开始今天的讲解。1. 指针的定义2. 指针和指针类型2.1 指针 + - 整数2.2 指针的解引用3. 野指针3.1 野指针的成因3.2 如何避免野指针4. 指针运算4.1 指针 +-

2023-05-16 19:17:11 99 1

原创 C语言小游戏《三子棋》具体实现

大家好,上节课,我为大家讲解了有关数组的基本知识,那么这节课,我就带着大家来一起实现一个叫《三子棋》的小游戏,会用到我们之前学过的数组,循环等相关知识,也是通过这个游戏,希望大家能够了解C语言实现游戏及其他项目的基本逻辑,那我们话不多说,现在开始吧!

2023-05-09 11:40:28 124 2

原创 C语言数组详解

今天,我们一起来C语言的下一个新知识点:数组。由于在之前,我们已经学习了C语言基本的数据类型(整型,浮点型,字符型等等),那么,如果我们想把一堆具有相同数据类型的数据放在一起,该如何实现呢?这就引出了数组的概念,数组就是具有相同数据类型的集合,下面先让我们学习一维数组。

2023-05-07 13:44:47 376

原创 C语言函数详解(二)

是指函数具体的实现。

2023-05-01 10:35:06 75 3

原创 C语言函数详解(一)

自定义函数相对于库函数来讲更加重要包括 函数名 返回值类型 函数参数下面,我们用C语言来实现一个简单的自定义函数我们实现了一个加法函数,Add为函数名,int为返回值类型,x, y分别为函数的参数下面我们可以写一个相对比较复杂的(自定义)函数a : b;我们写了一个比较大小的函数,函数名为get_max,参数有两个,来比较他们的大小。相信通过以上的两个例子,大家对库函数和自定义函数有了一个初步的理解,那么我们继续学习。3. 函数的参数。

2023-04-29 20:39:25 107 1

原创 编程小白的学习之路

其实无论是学习编程,还是学习其他专业课知识,都是一个循序渐进的过程,我不断的告诫自己,做什么事情都不要心浮气躁,一定要静下心来,不要着急,不要着急,不要着急,重要的事情说三遍hhh,在学习的过程中不断发现问题,寻找问题,并改正问题。1. 自我介绍:我是来自某不知名的一本院校,专业是人工智能,当时高考报志愿的时候对这个专业也不是很了解,导致现在自己对其兴趣不大(因为太多的数学推导公式,本人的数学不是特别好),于是想着趁考研之前多学一些技术,能够在考研复试,实习中得到一些比较好的机会。4.每周花费多长时间?

2023-04-20 15:24:12 192 1

空空如也

空空如也

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

TA关注的人

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