首页 > 编程语言 >双指针算法

双指针算法

时间:2022-11-29 21:56:04浏览次数:40  
标签:int len ++ 算法 str 指针

双指针算法

大致格式如下:

for(int i = 0; i < n; i++){
	while(j < i && check(i, j)) j++;
	
	//每道题目的具体逻辑 
}

核心思想:

for(int i = 0; i < n; i++){
	for(int j = 0; j < n; j++){
		//O(n^2)的复杂度		
	}
}
将上述朴素算法优化到O(n); 

例题
输入一个字符串,把其中的每一个单词输出出来。
输入:abc def ghi
输出:
abc
def
ghi

#include <bits/stdc++.h>

using namespace std;

int main(){
	char str[1000];
	
	gets(str);
	int len = strlen(str);
	for(int i = 0; i < len; i++){
		int j = i;
		while(j < len && str[j] != ' ') j++;
		
		//这道题的具体逻辑
		for(int k = i; k < j; k++){
			cout << str[k];
		} 
		cout << endl;
		i = j;
		
	}
	
	return 0;
}

标签:int,len,++,算法,str,指针
From: https://www.cnblogs.com/csai-H/p/16936836.html

相关文章

  • 图解实例讲解JavaScript算法,让你彻底搞懂
    你好程序员,我们大多数人都害怕算法,并且从未开始学习它。但我们不应该害怕它。算法只是解决问题的步骤。今天让我们以简单和说明性的方式介绍主要算法。不要试图记住它们......
  • C#数据结构-七大查找算法
    阅读目录1.顺序查找2.二分查找3.插值查找4.斐波那契查找5.分块查找6.树表查找7.哈希查找下面所有的代码,都已经经过vs测试。1.顺序查找基本思想:顺序查找也称为......
  • 创建仿生算法来寻找大脑癫痫灶
    发作间期的尖峰。a)典型波形。b)在时间t=0时传感器上的颜色编码活动分布示例,对应于峰值。它显示了一个明确的偶极子模式,表明符号变化区域中的癫痫灶。莫斯科国立高等经......
  • 10.查找算法
    在java中,我们常用四种查找算法:  1.顺序查找(线性)  2.二分法/折半查找  3.插值查找  4.斐波那契查找1.线性查找. 2.二分查找算法二分查找:对一个进行二......
  • 【量化LDPC】基于量化技术的LDPC译码算法的研究与matlab仿真
    1.本LDPC采用的量化方案      改进方案如下所示:   是由一个统计范围得到的,但是在实际中,根据信道的不同,可能存在多种可能,这里,我们的考虑的方案是自适......
  • 【最通俗易懂】A*寻路算法C#实现
    A*算法其实也不复杂,首先有以下几个概念:开启的节点表(OpenList)存放着所有的待检测的节点(坐标),每次都会从其中寻找出符合某个条件的节点。关闭的节点表(ClosedList)存放着所有......
  • AES算法学习02:原理总结和实现(ECB)
    一原理介绍:其实AES就是对16byte(128bit)数据进行加密的过程。说白了就是把128位通过一系列的变化变成另一个128数据。   这里主要用到2个关键的东西。密钥(key)这个是绝......
  • 代码随想录算法训练营第十四天 | 理论基础 递归遍历 迭代遍历 统一迭代
    今日内容:●理论基础●递归遍历●迭代遍历●统一迭代详细布置理论基础需要了解二叉树的种类,存储方式,遍历方式以及二叉树的定义文章讲解:https://pro......
  • const引用和指针
    1、可以为const引用初始化一个非const的对象、字面值,甚至是一般表达式。2、对引用初始化时必须严格进行类型匹配,但是const引用初始化时不需要类型匹配,只要可以转换为const......
  • 100道经典AI面试题帮你搞定算法offer!
    今天给大家分享一下关于机器学习与深度学习经典的100个面试题,供大家学习,对于面试AI算法岗一定会有帮助的。我的公众号"阿旭算法与机器学习",回复【AI面试题】,即可获取。......