发布一个k8s部署视频:https://edu.csdn.net/course/detail/26967
课程内容:各种k8s部署方式。包括minikube部署,kubeadm部署,kubeasz部署,rancher部署,k3s部署。包括开发测试环境部署k8s,和生产环境部署k8s。
腾讯课堂连接地址https://ke.qq.com/course/478827?taid=4373109931462251&tuin=ba64518
第二个视频发布 https://edu.csdn.net/course/detail/27109
腾讯课堂连接地址https://ke.qq.com/course/484107?tuin=ba64518
介绍主要的k8s资源的使用配置和命令。包括configmap,pod,service,replicaset,namespace,deployment,daemonset,ingress,pv,pvc,sc,role,rolebinding,clusterrole,clusterrolebinding,secret,serviceaccount,statefulset,job,cronjob,podDisruptionbudget,podSecurityPolicy,networkPolicy,resourceQuota,limitrange,endpoint,event,conponentstatus,node,apiservice,controllerRevision等。
第三个视频发布:https://edu.csdn.net/course/detail/27574
详细介绍helm命令,学习helm chart语法,编写helm chart。深入分析各项目源码,学习编写helm插件
————————————————------------------------------------------------------------------------------------------------------------------
1python版本
'''
Created on 2017-1-18
@author: admin
第16题(树):
题目(微软):
输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。
例如输入8
/ /
6 10
/ / / /
5 7 9 11
输出8 6 10 5 7 9 11。
'''
from _overlapped import NULL
class BinaryTree:
def __init__(self):
self.root=self.Node(0)
self.root.left=self.Node(1)
self.root.right=self.Node(2)
self.root.left.left=self.Node(3)
self.root.left.right=self.Node(4)
self.root.right.left=self.Node(5)
self.root.right.right=self.Node(6)
def levelWalk(self):
nodes=[]
nodes.append(self.root)
while len(nodes)>0:
print(nodes[0].value,end=",")
if nodes[0].left!=NULL:
nodes.append(nodes[0].left)
if nodes[0].right!=NULL:
nodes.append(nodes[0].right)
nodes=nodes[1:]
class Node:
def __init__(self,value):
self.value=value
self.left=NULL
self.right=NULL
if __name__ == '__main__':
tree=BinaryTree()
tree.levelWalk()
2java版本
3scala版本
package ms
import scala.collection.mutable.ListBuffer
/**
* 第16题(树):
题目(微软):
输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。
例如输入
8
/ /
6 10
/ / / /
5 7 9 11
输出8 6 10 5 7 9 11。
*/
class LeverTree{
var root:Node=null
def this(default:Int=1){
this()
root=Node(0)
root.left=Node(1)
root.right=Node(2)
root.left.left=Node(3)
root.left.right=Node(4)
root.right.left=Node(5)
root.right.right=Node(6)
}
def levelWalk(){
val listBuffer=ListBuffer[Node]()
listBuffer+=root;
while(listBuffer.size>0){
print(listBuffer(0).value+",")
if(listBuffer(0).left!=null){
listBuffer+=listBuffer(0).left
}
if(listBuffer(0).right!=null){
listBuffer+=listBuffer(0).right
}
listBuffer.remove(0)
}
}
case class Node(var value:Int,var left:Node=null,var right:Node=null)
}
object MicroSoft016 {
def main(args: Array[String]): Unit = {
val tree=new LeverTree(1)
tree.levelWalk()
}
}