程序员能做的最好的副业是什么?
2026/6/10 15:43:21 网站建设 项目流程

像什么996,007这些。

其最残酷的是扼杀了程序员其他的可能性,就是要让你只埋头干活,不要去思考选择其他事情。

很多人都说中国的程序员是没有积累的职业,不像医生,律师,教师这些。

所以我们尽早得尝试都积累些自己的生产资料,这样才能走的长远。

总之在目前的大环境下,每个程序员都应该为自己考虑一份被动收入,其重要性不言而喻。

我觉得程序员先多尝试一些低成本的可行的副业,然后找到适合自己的,能长期坚持下去的。

我们尝试做副业的时候,必须要满足几个特征。

1、个人喜欢,这样才能坚持下去。

2、需要能长期做的。

3、能给别人带来价值。

4、试错成本尽量低。

目前大家比较熟悉的副业有:

摆摊,跑滴滴,送外卖,接私活,当培训讲师,教少儿编程,做独立开发等。

我个人觉得当下程序员最好的副业是做自媒体

做自媒体,打造个人的品牌IP,能让你有更多的机会,认识更多的人。

  • 从和不同的人交流的过程中,能提升自己的认知水平。

自媒体类似一个免费的广告平台,发挥个人的技能,打造出一个个人品牌,然后通过自媒体宣传出去。

当通过自媒体获得了足够的流量,到时候变现也比较简单了。

比如可以通过广告变现,还可以卖课,不是都说程序员的终点是卖课么。

每日一题

题目描述

峰值元素是指其值严格大于左右相邻值的元素。

给你一个整数数组nums,找到峰值元素并返回其索引。

数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。

你可以假设nums[-1] = nums[n] = -∞

你必须实现时间复杂度为O(log n)的算法来解决此问题。

解题思路

二分查找

查找时,左指针l,右指针r,以其保持左右顺序为循环条件。

根据左右指针计算中间位置m,并比较mm+1的值。

  • 如果m较大,则左侧存在峰值,r = m
  • 如果m + 1较大,则右侧存在峰值,l = m + 1

代码实现

Java代码:

Java

体验AI代码助手

代码解读

复制代码

class Solution { public int findPeakElement(int[] nums) { int left = 0, right = nums.length - 1; for (; left < right; ) { int mid = left + (right - left) / 2; if (nums[mid] > nums[mid + 1]) { right = mid; } else { left = mid + 1; } } return left; } }

Python代码:

Python

体验AI代码助手

代码解读

复制代码

class Solution: def findPeakElement(self, nums: List[int]) -> int: # 二分查找 nums.append(-float("inf")) lo, hi = 0, len(nums) - 1 while lo < hi: mid = (lo + hi) // 2 if nums[mid] < nums[mid + 1]: lo = mid + 1 else: hi = mid return lo

Go代码:

Go

体验AI代码助手

代码解读

复制代码

func findPeakElement(nums []int) int { left, right := 0, len(nums)-1 for left < right { mid := (left + right) >> 1 if mid == len(nums)-1 || nums[mid] < nums[mid+1] { left = mid + 1 } else { right = mid } } return left }

复杂度分析

时间复杂度:O(logn)

  • 其中n是数组nums的长度。

空间复杂度:O(1)

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询