当前位置: 首页 > news >正文

外包公司名单一览表(成都)

大家好,我是苍何。

之前写了一篇武汉的外包公司名单,评论区做了个简单统计,很多人说,在外包的日子很煎熬,不再想去了。

有小伙伴留言说有些外包会强制离职,不行就转岗,让人极度没有安全感。

这点实际情况是,如果是跟着甲方临时性项目,由于甲方项目做完结束,如果没有新项目的情况下,人员就会释放。

外包公司就会安排进新的项目组,如果甲方反馈人员不大行,这个时候外包公司好的会安排再试试其他项目,不行的就直接安排离职。

而且就成长性来说,一些甲方不愿意或者处于信息安全的角度,对外包人员资料开放有限,这也导致,很多时候,不明不白的,就真的成了写代码的工具。

有些更过分,区别对待,在餐厅,正式员工就可以免费吃,外包就得多付钱,一系列不公平对待,也真够难受的。

好了,我觉得呢,如果当下没更好的去处,就先外包待着,默默努力,早日想自研公司进军。

下面给成都的外包公司做了个简单统计,给大家做个分享:

保命申明:这些公司苍何都没实际去过,仅根据群友反馈和网络搜集,如有出入的地方,还请指出,谢谢。

好啦,关于成都的外包公司,你有什么补充的呢?欢迎评论区讨论。

回归主题。

今天来一道某成都外包公司开发考过的一道面试算法题,给枯燥的牛马生活加加油😂。

  • 《RocketMQ 从入门到精通》 原创电子书免费下载(面试必背)
  • 面试官看了就喜欢的简历模板免费下载!
  • PmHub-开源项目-助你拿个好 offer。

题目描述

平台:LeetCode
题号:1
题目:两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案,且你不能使用同一个元素两次。

你可以按任意顺序返回答案。


示例 1
输入: nums = [2,7,11,15], target = 9
输出: [0,1]
解释: 因为 nums[0] + nums[1] == 9,返回 [0, 1]

示例 2
输入: nums = [3,2,4], target = 6
输出: [1,2]

示例 3
输入: nums = [3,3], target = 6
输出: [0,1]


提示

  • 2 <= nums.length <= 10⁴
  • -10⁹ <= nums[i] <= 10⁹
  • -10⁹ <= target <= 10⁹
  • 只会存在一个有效答案

进阶
你可以想出一个时间复杂度小于 O(n²) 的算法吗?


解题思路

为了降低时间复杂度,我们可以使用哈希表来记录已经遍历的数字和它们的索引,从而在一次遍历中完成查找:

  1. 初始化一个哈希表,用于存储数组元素的值和对应的索引。
  2. 遍历数组 nums
    • 对于每个元素,计算目标值 target 与当前元素的差值 complement
    • 检查 complement 是否已经存在于哈希表中:
      • 如果存在,说明找到了两个数,返回它们的索引。
      • 如果不存在,将当前元素和索引加入哈希表。
  3. 如果遍历结束仍未找到,则返回空数组(但根据题目保证有解,这种情况不会发生)。

这种方法的时间复杂度为 O(n),空间复杂度为 O(n)


代码实现

以下是基于解题思路的代码实现:

Java实现

import java.util.HashMap;public class TwoSum {public int[] twoSum(int[] nums, int target) {// 创建一个哈希表用于存储数字和索引HashMap<Integer, Integer> map = new HashMap<>();for (int i = 0; i < nums.length; i++) {int complement = target - nums[i];// 检查是否存在与当前数字匹配的补数if (map.containsKey(complement)) {return new int[] { map.get(complement), i };}// 如果不存在,将当前数字和索引存入哈希表map.put(nums[i], i);}// 根据题目保证有解,这里不会执行return new int[0];}
}

C++实现

#include <unordered_map>
#include <vector>
using namespace std;class Solution {
public:vector<int> twoSum(vector<int>& nums, int target) {// 使用哈希表存储数字和索引unordered_map<int, int> map;for (int i = 0; i < nums.size(); i++) {int complement = target - nums[i];// 检查哈希表中是否存在补数if (map.find(complement) != map.end()) {return {map[complement], i};}// 将当前数字和索引存入哈希表map[nums[i]] = i;}// 根据题目保证有解,这里不会执行return {};}
};

Python实现

def two_sum(nums, target):# 创建一个哈希表用于存储数字和索引num_map = {}for i, num in enumerate(nums):complement = target - num# 检查哈希表中是否存在补数if complement in num_map:return [num_map[complement], i]# 将当前数字和索引存入哈希表num_map[num] = i# 根据题目保证有解,这里不会执行return []# 测试用例
nums = [2, 7, 11, 15]
target = 9
print(two_sum(nums, target))  # 输出: [0, 1]

复杂度分析

  • 时间复杂度:O(n)
    遍历一次数组,每次操作(查找和插入哈希表)耗时均为 O(1)。

  • 空间复杂度:O(n)
    哈希表在最坏情况下需要存储数组中的所有元素。

ending

引导图

你好呀,我是苍何。是一个每天都在给自家仙人掌讲哲学的执着青年,我活在世上,无非想要明白些道理,遇见些有趣的事。倘能如我所愿,我的一生就算成功。共勉 💪

点击关注下方账号,你将感受到一个朋克的灵魂,且每篇文章都有惊喜。

更多更全更热门的「笔试/面试」相关资料可访问排版精美的 合集新基地 🎉🎉

http://www.lryc.cn/news/522446.html

相关文章:

  • 个人vue3-学习笔记
  • STM32 FreeRTOS消息队列
  • Datawhale-self-llm-Phi-4 Langchain接入教程
  • 窥探QCC518x/308x系列与手机之间的蓝牙HCI记录与分析 - 手机篇
  • Golang Gin系列-1:Gin 框架总体概述
  • CF986 div2 ABCD补题
  • Ubuntu 22.04 上安装和使用 ComfyUI
  • 用户中心项目教程(一)--Ant design pro初始化的学习和使用
  • 分频器code
  • C#中字符串方法
  • Python毕业设计选题:基于django+vue的二手电子设备交易平台设计与开发
  • 【愚公系列】《微信小程序与云开发从入门到实践》059-迷你商城小程序的开发(加入购物车与创建订单功能开发)
  • Mac Android studio :gradle 配置、代理设置、及各种环境变量配置;
  • unity——Preject3——开始界面拼面板
  • 【达梦数据库(Oracle模式)】如何将视图中的数据导出
  • GB44495-2024 汽车整车信息安全技术要求 - V2X部分前置要求
  • FastAPI 应用的容器化与 Docker 部署:提升性能与可扩展性
  • QT入门的一些吐槽
  • 4.Spring AI Prompt:与大模型进行有效沟通
  • 深入内核讲明白Android Binder【二】
  • Python基于Django的图像去雾算法研究和系统实现(附源码,文档说明)
  • TCP 连接状态标识 | SYN, FIN, ACK, PSH, RST, URG
  • WXML模版语法-事件绑定
  • 楚慧杯Web
  • 工商业储能电站能量管理本地系统及多站点云平台
  • HTML标签笔记
  • pthread_create函数
  • C# 并发和并行的区别--16
  • Java日志配置
  • python中的RPA->playwright自动化录制脚本实战案例笔记