分类: 技术

100 篇文章

上下左右方向上都有给定点的点的数量
题目 现在有一组给定点的坐标,求出坐标系中在上下左右方向上都有给定点的点的数量。注意:目标点不能和给定点重合,另外要求的是“上下左右方向上”而不是简单的“上下左右”; 题解 解析 根据题目的描述,需要…
thumbnail
C# 的垃圾回收机制(GC)
概述 C# 的主要优势之一是自动内存管理,开发人员无需手动释放未使用对象的内存,提高了开发效率。当然,这不能避免一些内存泄漏与程序崩溃的相关问题。除了在 C# 中避免垃圾回收问题外,Unity 中内存…
快速排序
概述 快速排序的主要思想是分治法,将一个大问题分割成小问题,解决小问题后再合并它们的结果。 实现 从待排序的数组中选择一个元素,作为基准元素(pivot); 将数组中小于基准元素的元素移到基准元素的左…
排序算法的稳定性
概述 排序稳定性是指在排序算法中,具有相同键值的元素在排序前后保持原有的相对顺序不变的性质(大小相同的两个值在排序之前和排序之后的先后顺序不变)。 排序算法的稳定性是一个重要的特性,它在某些应用场景中…
thumbnail
C++ 引用和指针的区别
什么是引用 “引用是变量的别名”,如: int n = 10; int &m = n; 在这里,m完全等价于n,任何对m的操作都是对n的操作; 引用的特性 引用必须初始化 引用初始化后就不能修…
thumbnail
Unity 的 ScriptableObject
简介 Unity官方说法:ScriptableObject 是一个可独立于类实例来保存大量数据的数据容器。ScriptableObject 的一个主要用例是通过避免重复值来减少项目的内存使用量。如果项…
拓扑排序
有向无环图 在讨论拓扑排序之前,要先知道一个重要的概念:有向无环图。 有向无环图,简称 DAG(Directed Acyclic Graph),是一种图论中的概念,它具有以下两个主要特征: 有向(Di…
thumbnail
C++ ACM常用输入输出方法
对使用 C++ 写算法时的一些常见输入输出格式做一下总结; 求和,给定每组数据个数 输入描述 输入数据有多组, 每行表示一组输入数据。每行的第一个整数为整数的个数n(1 <= n <= 1…
堆排序与堆
概述 堆排序是一种树形选择排序,在排序的过程中,将待排序的记录r[1...n]看作一棵完全二叉树的顺序存储结构。 特点 不稳定排序; 只能用于顺序结构,不能用于链式结构; 初始建堆比较次数较多,因此记…
用两个栈实现队列
特性 栈的特性:后进先出 队列的特性:先进先出 解析 用两个栈实现队列,其实就是通过组合两个栈,一个作为入队栈,一个作为出队栈。 入队 这里将栈1当作入队栈: void push(const T &a…