数据结构与算法
数据结构与算法(python,c,c++,java)
qestion_yz_10086
这个作者很懒,什么都没留下…
展开
-
约瑟夫问题
约瑟夫问题在古罗马人占领乔塔帕特后,39个犹太人与约瑟夫和他朋友躲到一个洞中。39个犹太人决定宁死也不被敌人找到,于是商定以一种特殊的方式自杀。41个人排成一个圈圈,有第一个人开始报数,每报数到3的人就必须自杀,直到所有人都自杀身亡位置。但是约瑟夫及其朋友并不想死,那么请问约瑟夫及朋友应该怎样安排自己的位置才能逃过一劫。if __name__ == '__main__': personlist=[i for i in range(1,41+1)] personlistlen=len(原创 2020-10-27 16:33:14 · 690 阅读 · 3 评论 -
python外观模式
python外观模式from enum import Enumfrom abc import ABCMeta, abstractmethodState = Enum('State', 'new running sleeping restart zombie')class User: passclass Process: passclass File: passclass Server(metaclass=ABCMeta): @abstractm原创 2020-08-27 14:55:24 · 190 阅读 · 0 评论 -
python原型模式(二)
python原型模式(二)import copyfrom collections import OrderedDictclass Book: def __init__(self, name, authors, price, **rest): '''rest的例子有:出版商、长度、标签、出版日期''' self.name = name self.authors = authors self.price = price # 单原创 2020-08-27 14:32:55 · 114 阅读 · 0 评论 -
python原型模式
python原型模式原型设计模式(Prototype design pattern)帮助我们创建对象的克隆,其最简单的形式就是一个clone()函数,接受一个对象作为输入参数,返回输入对象的一个副本。在Python中,这可以使用copy.deepcopy()函数来完成。来看一个例子,下面的代码中(文件clone.py)有两个类,A和B。A是父类,B是衍生类/子类。在主程序部分,我们创建一个类B的实例b,并使用deepcopy()创建b的一个克隆c。结果是所有成员都被复制到了克隆c,以下是代码演示。原创 2020-08-27 14:11:29 · 191 阅读 · 0 评论 -
python建造者模型(2)
python建造者模型from enum import Enumimport timePizzaProgress = Enum('PizzaProgress', 'queued preparation baking ready')PizzaDough = Enum('PizzaDough', 'thin thick')PizzaSauce = Enum('PizzaSauce', 'tomato creme_fraiche')PizzaTopping = Enum('PizzaTopping'原创 2020-08-27 14:03:15 · 192 阅读 · 0 评论 -
python建造者模式
python建造者模式class AppleFactory: class MacMini14: def __init__(self): self.memory = 4 # 单位为GB self.hdd = 500 # 单位为GB self.gpu = 'Intel HD Graphics 5000' def __str__(self): info = ('Model: {原创 2020-08-27 13:46:04 · 166 阅读 · 0 评论 -
python---前k个高频单词
前k个高频单词给一非空的单词列表,返回前_k_个出现次数最多的单词。返回的答案应该是按单词出现频率有高到低排序。如果不同的单词有相同出现频率,按照字母顺序排序。import numpy as npdef result_1(str_list,k): str_list_set=np.sort(list(set(str_list))) str_list_set_number=[0 for i in range(len(str_list_set))] str_dict=dict(zi原创 2020-08-12 10:43:52 · 516 阅读 · 0 评论 -
python--爬楼梯
假设你正在爬楼梯。需要爬_n_步你才能到达楼顶。每次你可以爬1或者2个台阶。你有多少种不同的方法可以爬到楼顶呢?class Solution(object): def __init__(self,n): self.n=n self.pre=None self.climbStairs() def climbStairs(self): if self.n<=1: self.pre=1原创 2020-08-12 10:10:36 · 230 阅读 · 0 评论 -
python--两数之和
两数之和'''给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。'''def day02(nums: object, target: object) -> object: result=[] for idx0,i in enumerate(nums): a=i for idx1,ii in enumerate(nums): b=ii if idx0!=idx1:原创 2020-07-29 10:28:14 · 128 阅读 · 0 评论 -
python--三数之和
三数之和'''给定一个包含——n——个整数的数组'num',判断’num'中是否存在三个元素a,b,c是的a+b+c=0找出所有满足条件且不重复的三元数组'''def day01(nums): result=[] for idx0,i in enumerate(nums): a=i for idx1,ii in enumerate(nums): if idx0!=idx1: b=ii原创 2020-07-29 10:20:34 · 297 阅读 · 0 评论 -
python--二叉树和它的七种遍历
python–二叉树和它的七种遍历class Node(object): """节点类""" def __init__(self, elem=-1, lchild=None, rchild=None): self.elem = elem self.lchild = lchild self.rchild = rchildclass Tree(object): """树类""" def __init__(self):原创 2020-07-03 11:30:46 · 97 阅读 · 2 评论 -
Python在机器学习--决策树和集成学习
Python在机器学习–决策树和集成学习import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport scipy as spfrom matplotlib.font_manager import FontPropertiesfont=FontProperties(fname="E:\Fonts\方正粗黑宋简体.ttf",size=14)from mpl_toolkits.mplot3d import Axe原创 2020-06-17 11:58:00 · 156 阅读 · 0 评论 -
C++冒泡排序
C++冒泡排序#include<memory.h>#include<iostream>#include<stdio.h>#include<stdlib.h>using namespace std;void sort(int A[],int n){ for (int i = 1; i < n; i++) { for (int j = 0; j < i; j ++ ) { if (A[j]>A[i]) {原创 2020-06-11 14:42:48 · 87 阅读 · 0 评论 -
java矩阵的乘法
java矩阵乘法实现package com.zhiyou100.test;public class MatrizMultiple { public static void main(String[] args){ int a[][]={{5,7,8,2}, {-2,4,1,2}, {1,2,3,4}}; int b[][]={{4,-2,3,3,9}, {4...原创 2020-04-07 16:00:26 · 158 阅读 · 0 评论 -
java冒泡排序
java冒泡排序package com.zhiyou100.test;public class SelectionSort { public static void selectionSort(int[] array){ for(int i=0;i<array.length-1;i++){ for(int j=i+1;j<array.length;j++){ ...原创 2020-04-07 15:47:49 · 66 阅读 · 0 评论