zoukankan      html  css  js  c++  java
  • c++ 中字符串

    c++ 中字符串 string

    string.size()
    string.erase()
    operator:
    []:访问指定位置的字符串
    =:赋值
    +:连接
    == / > ... :按字典序比较两个字符串
    >>   <<   :string流的输入输出
    getline() :从I/O流读取数据到字符串
    

    #include<iostream>
    #include<algorithm>
    #include<cstring> 
    using namespace std;
    
    string nums[23];    //string num[1]是一个字符串
    
    bool cmp(const string &a,const string &b)
    {
    	return a+b>b+a;  
    	//字符串自带 + >  
    	/*
    	自定义排序函数,这一步非常巧妙,假设a=321,b=32;a+b=32132,b+a=32321这样下面sort排下来就是32>321
    	避免出现32132>32321的情况 
    	
    	*/ 
    } 
    
    int main()
    {
    	int n;
    	cin>>n;
    	
    	for(int i=0;i<n;i++)
    	{
    		cin>>num[i];
    	}
    	
    	sort(nums,nums+n,cmp);
    	
    	for(int i=0;i<n;i++)
    	{
    		cout<<nums[i];
    	}
    	cout<<endl;
    	return 0;
    }
    /*
    对这个cmp提供我自己的见解:
    抛开这道题
    如果要求从小到大排序
    bool cmp(const string &a,const string &b)
    {
        return a>b;
    }
    sort(a,a+n,cmp)         从a到a +n  这n个数,依次比较,当return 值为1时,a排在b前面
    类比   当a+b  >  b+a  时,a排在b前面,类似的道理
    */
    
    
  • 相关阅读:
    拍照上传图片方向调整
    js 压缩上传图片
    js 各种循环语法
    本地Git仓库对照多个远程仓库
    nrm安装与配置使用
    面试常见问题
    NodeJs文件路径
    vscode添加智能提示(typings)
    前端常用的工具库
    DeepMask学习笔记
  • 原文地址:https://www.cnblogs.com/serendipity-my/p/12663716.html
Copyright © 2011-2022 走看看