数组
spContent=主要介绍高级语言程序中的数据运算、语句和过程调用等如何在计算机系统中实现,包含:(1)数据、指针、指令等的表示和存储;(2)高级语言程序中语句与机器级代码间的对应关系;(3)静态链接和动态链接。 本课程是“计算机系统基础”系列课程中的第一门,主要介绍高级语言程序中的数据类型及其运算、语句和过程调用等是如何在计算机系统中实现的。主要包含三个主题:(1)表示
【数据结构】看完必会的并查集入门攻略2.0 本文是前文的升级版本,在前文的基础上,增加了更详细的讲解,将实现过程分步描述,并且将前文的python实现改成了cpp的实现。 “并查集”是一种思路巧妙,代码很短的数据结构,也因此常常在算法题或者面试中出现。下面我们以一个模板题目作为示例,详细描述并查集的基本原理及使用
数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{123222542}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2
指针的值是指针本身存储的数值,这个值将被编译器当作一个地址,而不是一个一般的数值。在32位程序里,所有类型的指针的值都是一个32位整数,因为32位程序里内存地址全都是32位长。指针所指向的内存区就是从指针的值所代表的那个内存地址开始
C语言是一种编译的程序设计语言,其应用十分广泛。C语言课程是计算机及相近专业的一门必修的专业课程。学C语言是学一门技能,学一门本领
两道题目 整数分解与全排列 初步了解了一下深度优先搜索 第一题:整数分解 思路:当一个输入的整数被分解过后,它会产生一个剩余的数。比如7分解3会剩余4,4就成为了新的待分解的数。因此4就是7,于是分解过程是完全一致的
快速排序是对冒泡排序的一种改进,快速思想是使用分治法,其中有一个基准值,把一个数组中的数分为较基准值大和较基准值小的两部分(子数组),所有比基准值大的放在基准值后面,所有比基准值小的放在基准值前面,然后递归再次切分,直至子数组的大小为1或0,此时全局有序。 快速排序是不稳定的排序,在排序后,相同值的先后顺序可能会变化,所以是不稳定的。 所谓是稳定性是指:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的
所谓“选择排序”,基本思路就是不断从数组中选择出最小的数。 还是以扑克牌为例。假设有 N 张扑克牌,记扑克牌集合为 cards,则我们的基本操作如下: 实际上,这个算法,不存在最好的情况和最坏的情况
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出和为目标值target的那 两个整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现
有M个人,其编号分别为1-M。这M个人按顺序排成一个圈。现在给定一个数N,从第一个人开始依次报数,数到N的人出列,然后又从下一个人开始又从1开始依次报数,数到N的人又出列...如此循环,直到最后一个人出列为止






