快速分类是基于分而治之策略的内部算法。在此: 元素数组被重复地分成多个部分, 直到无法进一步划分为止。 也被称为"分区交换排序". 它使用关键元素(枢轴)对元素进行分区。 一个左分区包含所有小于枢轴的...
算法设计:数组中滑动窗口的中位数|S2
本文概述 CPP 先决条件: 基于策略的数据结构, 滑窗技术. 给定一个整数arr和整数K的数组,任务是找到每个大小为K的窗口的中值,从左开始,每次向右移动一个位置。 例子: 输入:arr = {-1...
算法设计:查找两个数字的LCM的程序
本文概述 C ++ C Java Python3 C# PHP 两个数字的LCM(最小公倍数)是可以除以两个数字的最小数字。 一个简单的解决方法是找出两个数的所有质因数,然后找出两个数中所有因数的并集...
算法题:检查两个字符串是否互为字谜
本文概述 C ++ Java python C# C ++ C Java python C# CPP C ++ 编写函数以检查两个给定的字符串是否为字谜彼此之间。字符串的字谜是另一个包含相同字符的字符...
算法题:递归删除所有相邻的重复项
本文概述 C++ Java python Java 给定字符串, 以递归的方式从字符串中删除相邻的重复字符。输出字符串不应包含任何相邻的重复项。请参阅以下示例。 例子: 输入:azxxzy输出:ay首...
算法题:总和等于k的子数组数
本文概述 C++ Java C++ Java Python3 C# 给定一个未排序的整数数组, 找到总和等于给定数k的子数组的数量。 例子: Input : arr = {10, 2, -2, -20...
算法分析和设计:流程图简介
本文概述 C C ++ Java C# 什么是流程图? 流程图是算法的图形表示。程序员通常将其用作解决问题的程序计划工具。它利用连接在它们之间的符号来指示信息和处理的流程。 绘制算法流程图的过程称为"...
算法设计:布尔括号问题| DP-37
本文概述 C ++ Java Python3 C# 给定带有以下符号的布尔表达式。 Symbols 'T' ---> true 'F' ---> false 并在符号之间填充以下运算符 O...
登山简介|人工智能
爬山是一种启发式搜索, 用于人工智能领域中的数学优化问题。 给定大量输入和良好的启发式功能, 它会尝试找到足够好的解决问题的方法。该解决方案可能不是全局最优最大值。 在以上定义中, 数学优化问题这意味...
算法题:比赛选择(GA)问题介绍和解决方案
比赛选择是一种选择策略, 用于在遗传算法中从当前一代中选择最适合的候选人。这些选定的候选人然后被传递给下一代。在K向锦标赛选择中, 我们选择k个人并在其中进行比赛。在那些选择的候选者中, 只有最适合的...