通过局域网访问连接 vite 或 Django 之类的项目

博客地址:https://www.cnblogs.com/zylyehuo/ step1 将 vite 或 Django 类的项目启动 ip 设置为 0.0.0.0:端口 step2 查询本机电脑在当前局域网下的 ip step3 将跳转路径改为查询到的本机 ip,再加上第一步中设置的前端端口

汉诺塔问题(递归)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ def hanoi(n, a, b, c): if n > 0: hanoi(n - 1, a, c, b) print("moving from %s to %s" % (a,

顺序查找(线性查找)

博客地址:https://www.cnblogs.com/zylyehuo/ 时间复杂度:O(n) # _*_coding:utf-8_*_ def linear_search(li, val): for ind, v in enumerate(li): if v == val: return in

二分查找(折半查找)

博客地址:https://www.cnblogs.com/zylyehuo/ 时间复杂度:O(logn) # _*_coding:utf-8_*_ def binary_search(li, val): left = 0 right = len(li) - 1 while left <= right

常见排序算法(汇总)

博客地址:https://www.cnblogs.com/zylyehuo/ 希尔排序:时间复杂度与选取的gap序列有关 计数排序: 时间复杂度:O(n) 桶排序: 时间复杂度:O(n+k) 最坏时间复杂度:O(n²k) 空间复杂度:O(nk) 基数排序: 时间复杂度:O(kn) 空间复杂度:O(k

冒泡排序(LOW)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ import random def bubble_sort(li): for i in range(len(li)-1): exchange = False for j in ra

选择排序(简单版)(LOW)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ def select_sort_simple(li): li_new = [] for i in range(len(li)): min_val = min(li) li_new.

选择排序(LOW)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ def select_sort(li): for i in range(len(li)-1): # i是第几趟 min_loc = i for j in range(i+1, le

插入排序(LOW)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ def insert_sort(li): for i in range(1, len(li)): # i 表示摸到的牌的下标 tmp = li[i] j = i - 1 # j指的

快速排序(NB)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ def partition(li, left, right): tmp = li[left] while left < right: while left < right and

堆排序(标准版)(NB)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ import random def sift(li, low, high): # 堆的向下调整(大根堆) """ :param li: 列表 :param low: 堆的根节点位置

堆排序(内置模块 heapq )(NB)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ import heapq # q->queue 优先队列 import random li = list(range(10)) random.shuffle(li) print(l

堆排序(topk 问题)(NB)

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ # 比较排序 import random def sift(li, low, high): # 堆的向下调整(小根堆) i = low j = 2 * i + 1 tmp = li

归并排序(递归)(NB)

博客地址:https://www.cnblogs.com/zylyehuo/ 递归思路 # _*_coding:utf-8_*_ import random def merge(li, low, mid, high): i = low j = mid + 1 ltmp = [] while i <=

希尔排序

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ import random def insert_sort_gap(li, gap): for i in range(gap, len(li)): # i 表示摸到的牌的下标 tm

计数排序

博客地址:https://www.cnblogs.com/zylyehuo/ # _*_coding:utf-8_*_ import random def count_sort(li, max_count=100): count = [0 for _ in range(max_count + 1)]

桶排序

博客地址:https://www.cnblogs.com/zylyehuo/ # -*- coding: utf-8 -*- import random def bucket_sort(li, n=100, max_num=10000): buckets = [[] for _ in range(n

基数排序

博客地址:https://www.cnblogs.com/zylyehuo/ # -*- coding: utf-8 -*- # O(n) O(kn) # NB O(nlogn) import random def radix_sort(li): max_num = max(li) # 最大值 9-

栈的应用(后进先出 LIFO)--括号匹配问题

博客地址:https://www.cnblogs.com/zylyehuo/ # -*- coding: utf-8 -*- class Stack: def __init__(self): self.stack = [] def push(self, element): self.stack.ap

队列的实现方式(先进先出 FIFO)--环形队列

博客地址:https://www.cnblogs.com/zylyehuo/ # -*- coding: utf-8 -*- class Queue: def __init__(self, size=100): self.queue = [0 for _ in range(size)] self.s