【算法笔记】暴力匹配双重循环的循环条件总结
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-11-20RabbitMQ教程:新手入门指南
- 2024-11-20Redis教程:新手入门指南
- 2024-11-20SaToken教程:新手入门指南
- 2024-11-20SpringBoot教程:从入门到实践
- 2024-11-20Java全栈教程:从入门到实战
- 2024-11-20Java微服务系统教程:入门与实践指南
- 2024-11-20Less教程:初学者快速上手指南
- 2024-11-20MyBatis教程:新手快速入门指南
- 2024-11-20QLExpress教程:初学者快速入门指南
- 2024-11-20订单系统教程:从入门到实践的全面指南