Shopee测试笔试(2024.10.8)

单选、双选、编程

  1. 冒泡排序
  2. 函数的传值、传地址
  3. 常规非递归方法遍历一个平衡二叉树,所需要的时间复杂度和空间复杂度
  4. SQL查询第一位为8或6,第三位为0的表达式
  5. 二叉树的先序、中序、后序遍历
  6. truncate、delete、drop
  7. POP3
  8. X锁、S锁
  9. 404原因
  10. 线程、进程
  11. 性能测试、压力测试、负载测试
  12. Linux命令

算法题:

  1. 栈的压入弹出:图书只能按一定顺序放入、拿取图书。给定图书存放顺序putln,判断takeout是否是按正确顺序拿出图书。
  2. 判断s1的排列之一是否是s2的子串
  3. 二维数组plants,每行每个元素小于等于其右侧相邻元素,每列每个元素小于等于下侧相邻元素,判断plants中是否有目标值target。
全部评论
SELECT telephone FROM student WHERE telephone LIKE '8__0%' OR telephone LIKE '6__0%';
点赞 回复 分享
发布于 10-09 14:10 广东
#include <iostream> #include <vector> // 使用标准命名空间 using namespace std; bool binarySearchInMatrix(vector<vector><int>>& plants, int target) { int rows = plants.size(); if (rows == 0) return false; int cols = plants[0].size(); int row = 0; int col = cols - 1; while (row < rows && col >= 0) { if (plants[row][col] == target) { return true; } else if (plants[row][col] > target) { --col; // 向左移动 } else { ++row; // 向下移动 } } return false; }</int></vector></vector></iostream>
点赞 回复 分享
发布于 10-09 14:14 广东
#include <iostream> #include <unordered_map> #include <cassert> // 使用标准命名空间 using namespace std; bool isPermutationSubstring(const string& s1, const string& s2) { size_t len_s1 = s1.length(); size_t len_s2 = s2.length(); // 如果s1的长度大于s2,不可能是子串 if (len_s1 > len_s2) { return false; } // 使用哈希表存储字符计数 unordered_map<char> charCountS1; unordered_map<char> charCountWindow; // 初始化s1的字符计数 for (size_t i = 0; i < len_s1; ++i) { ++charCountS1[s1[i]]; ++charCountWindow[s2[i]]; } // 滑动窗口 for (size_t i = 0; i < len_s2 - len_s1; ++i) { if (charCountS1 == charCountWindow) { return true; } // 移动窗口 ++charCountWindow[s2[i + len_s1]]; --charCountWindow[s2[i]]; } // 最后一次比较 return charCountS1 == charCountWindow; } // 测试函数 void check() { assert(isPermutationSubstring("abc", "cbabadcbbabbcbabaabccbabc") == true); assert(isPermutationSubstring("test", "esttest") == true); assert(isPermutationSubstring("hello", "world") == false); assert(isPermutationSubstring("a", "ab") == true); assert(isPermutationSubstring("aa", "a") == false); cout << "All tests passed!" << endl; } // 如果不需要主函数,可以将测试函数直接放在代码末尾 check();</char></char></cassert></unordered_map></iostream>
点赞 回复 分享
发布于 10-09 14:20 广东

相关推荐

5 4 评论
分享
牛客网
牛客企业服务