刚刚开始学习python,当前看到了函数这一节。结合数组操作,写了个非递归的全排列生成。原理是插入法,也就是在一个有n个元素的已有排列中,后加入的元素,依次在前,中,后的每一个位置插入,生成n+1个新的全排列。因为Python切割数组或者字符串,以及合并比较方便,所以,程序会节省很多代码。
def getArrayInsertCharToStr(STR,CHAR):
arr =[]
s_len = len(STR)
index =0
while index <= s_le
二叉搜索树的结构如下:
// Binary Search Tree
type BST struct {
// Data interface{} 替换为interface可以支持多种数据类型
Val int
Left *BST
Right *BST
}
实现如下操作:
查找(递归/非递归)
删除
插入
最大值
最小值
代码:
package main
// Binary Search Tree
type BST struct {
// Dat