【算法笔记】暴力匹配双重循环的循环条件总结
2021/7/29 17:08:10
本文主要是介绍【算法笔记】暴力匹配双重循环的循环条件总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
暴力匹配中常常会用到双重循环,而匹配的形式不同,循环的条件也会不同。以下时两种暴力匹配的形式。
1.有序匹配:即匹配(a1,a2)不等同于(a2,a1)。则使用以下循环;
for(i=0;i<n;i++) { for(j=0;j<n;j++) }
2.无序匹配:即匹配(a1,a2)等同于(a2,a1)。则使用以下循环;
for(i=0;i<n-1;i++) { for(j=i;j<n;j++) }
以上可以看出二者的两个区别:
第一,有序匹配的内循环要从0开始,而无序匹配的内循环要从i开始;
第二,有序匹配外循环要重复n次即所有元素都要参与外循环匹配,无序匹配外循环只重复 n-1次,其中第n个元素无需参加外循环;
值得注意的是当匹配需要跳过自身匹配,即(ai,ai)时,无序匹配应该从i+1开始扫描。
参考练习题:leetcode #1 两数之和
这篇关于【算法笔记】暴力匹配双重循环的循环条件总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-27数据结构与算法面试题详解及练习
- 2024-12-27网络请求面试题详解与实战
- 2024-12-27数据结构和算法面试真题详解与实战教程
- 2024-12-27网络请求面试真题解析与实战教程
- 2024-12-27数据结构和算法大厂面试真题详解与实战指南
- 2024-12-27TS大厂面试真题解析与应对策略
- 2024-12-27TS大厂面试真题详解与解析
- 2024-12-27网站安全入门:如何识别和修复漏洞
- 2024-12-27SQL注入基础教程
- 2024-12-27初学者指南:理解和修复跨域漏洞