刷题专栏
本专栏主要是刷题的讲解
小猿桥
人当努力,上进,却又时而慵懒,时而勤快。用知识和情调填满生活的每一分每一秒。
展开
-
strlen和sizeof的区别,数组长度和字符串长度,别再傻傻分不清
本文主要讲一下很多初识C语言的同学会遇到的问题,也是很多高校考研必考题。sizeof和strlen到底怎么用,我简单总结了一下他们的用处:sizeof:计算变量大小,数组大小,(包括\0)单位为字节,是一个操作符; strlen:计算字符串长度,以\0为结束标志,是一个库函数。大家先看一段代码:int main(){ char a[] = "xyz"; char b[] = { 'x','y','z' }; printf("%d\n",sizeof(a)); //4 p原创 2021-09-23 12:06:28 · 1131 阅读 · 5 评论 -
力扣110之平衡二叉树判断—#经典题#
题目概述:思路:毋庸置疑,基本大部分关于二叉树的题目必定用到递归思想。这个题目也不例外。这里我们利用后序遍历的思想,先遍历左子树,然后遍历右子树,最后判断根。每一次遍历时,我们都要去求这个根节点对应左右子树的深度,然后做比较,绝对值小于2则此节点满足,依次遍历,直到所有的节点都满足才是平衡树。这个代码我们必须先写一个求二叉树深度的代码,很简单这里就不赘述了。代码如下:int maxDepth(struct TreeNode* root){ if(root==NULL) {原创 2021-09-22 12:14:41 · 106 阅读 · 1 评论 -
数据结构-链表带环问题 #经典题#
一、问题描述给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。其中pos为圆环的入口点序号,但返回值并不是用pos,返回节点地址。二、如何判断链表是否带环假设链表带环,那么这个链表就会一直循环下去;假设这个链表没有环,那么这个链表最终就会走到空。基于此,我们定义两个指针(快慢指针),fast与slow。循环一直往后走,当fast为空或者fast->next为NULL时,代表无环;当fast==slow时,即相遇,即有环。#fast和slow每次走几步合适#sl原创 2021-09-03 14:50:22 · 239 阅读 · 9 评论 -
百度美团笔试题——迷宫问题,进来测测数据结构和C语言是否过关
文章目录一、题目详情二、题目分析三、代码步骤分析3.1 动态开辟数组并输入数据3.2 定义坐标结构体3.3 判断下一步是否可通3.4 寻找通路:GetMazePath3.5 打印路径3.6 栈的代码五、完整代码5.1 C语言实现5.2 C++实现六、进阶版——底下迷宫6.1 题目描述6...原创 2022-05-04 19:49:13 · 1342 阅读 · 0 评论 -
智能题——赛马问题
题目:36匹马,六个赛道,至少赛多少次能挑出前三(每次赛马成绩不变)答案:8次解题思路:想要每一匹马上场比赛,至少要分六组赛六次。这样就可以知道每组里面的排名。很明显,每一组里面的4,5, 6连本组的前三都没进,所以直接淘汰,不可能进入最终的前三。这个时候我们让每一组的第一名赛一次,决出每组第一名的名次,这个时候得到的第一定是第一名,但前三不一定是最终的前三,这个时候第二名所在的那个组的第二名是有可能比拿到第三名的那个成绩要好。(就好像高中的分班,火箭班的第二十名都有可能比平行班的第一名要好)所以原创 2021-03-14 00:44:32 · 1188 阅读 · 4 评论