手写代码高频考点(一)

1、单词逆序反转


void reverseWords(string &str){
  if (str.length() == 0){
    return;
  }

  stack<string> stack;
  bool isWord = false;
  string tempStr;
  for (int i = 0; i < str.length(); i++){
    //开始截取单词 
    if (str[i] != ' ' && isWord == false){
      isWord = true;
    }  	

    //截取单词结束
    if (str[i] == ' ' && isWord == true){
      isWord = false;
      stack.push(tempStr);
      tempStr.clear();
    } 

    //截取单词 
    if (true == isWord){
      tempStr += str[i];
    }
  }

  //截取最后一个单词 
  if (str[str.length() - 1] != ' '){
    isWord = false;
    stack.push(tempStr);
    tempStr.clear();
  }

  //调整方向 
  str.clear();
  while(!stack.empty()){
    str += stack.top();
    str += ' ';
    stack.pop();
  } 
}

2、冒泡排序


void buddingSort(vector<int> &arr){
  for (int i = 0; i < arr.size(); i++){
    for (int j = 0; 

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

嵌入式软件面试笔记 文章被收录于专栏

该笔记涵盖嵌入式软件工程师技术面试中的知识点,归纳总结为:C/C++、操作系统、计算机网络、数据结构与算法、linux常用命令等章节。

全部评论
现在还要手写代码?
点赞 回复 分享
发布于 2023-02-12 20:54 四川
太多了,记不住
点赞 回复 分享
发布于 2023-02-12 21:42 湖北

相关推荐

11-05 07:29
贵州大学 Java
点赞 评论 收藏
分享
shtdbb_:还不错,没有让你做了笔试再挂你
点赞 评论 收藏
分享
1 4 评论
分享
牛客网
牛客企业服务