众所周知 反转字符串只需要reverse(a.begin(),a.end())就行了 但是呢 这种简洁且省性能的方式并不是我的风格

所以 我发明了一种不太简洁且性能相对差的反转方法

#include<iostream>

using namespace std;

int main()
{
	
	string a;
	cin >> a;
	
	for(int i = 0; i < a.size() - 1; ++i){
		
		for(int t = i; t < a.size() - 1; ++t){
			
			swap(a[i],a[t + 1]);
		}
	}

	cout << a;
	
	return 0;
 } 

上面代码有一种冒泡排序的感觉 都是两层循环 但是时间复杂度并没有到O(n2)O(n^2) 令我十分难受

1 comments

  • @ 2024-10-11 9:11:05

    这波纯整活 要反转还是用reverse好一点(要algorithm库的)

    • 1