typedef struct _Tree{
int val;
struct _Tree *left;
struct _Tree *right;
}Tree;
Run Code Online (Sandbox Code Playgroud)
这是Tree一个指针吗?它是否指向val的地址?
如果我定义的话怎么Tree *node样?是node指向地址的指针Tree吗?
如果我们想插入val,我们应该使用insert(&node)或insert(node)?
void insert_Tree(Tree **root, int key){
if((*root) == NULL){
(*root) = (Tree *)malloc(sizeof(Tree));
(*root)->val = key;
(*root)->left = NULL;
(*root)->right = NULL;
cout<<"insert data "<<key<<endl;
}else if(key< (*root)->val){
insert_Tree(&(*root)->left, key);
cout<<"go left"<<endl;
}else{
insert_Tree(&(*root)->right, key);
cout<<"go right"<<endl;
}
}
int main(){
Tree *root = NULL;
insert_Tree(&root, 10);
insert_Tree(&root, 20);
insert_Tree(&root, 5); …Run Code Online (Sandbox Code Playgroud) 对于c ++ STL,我们可以使用“ push_back”插入新值,如果我们从不使用pop_back,是否存在push_back时间限制?
换句话说,向量的最大大小是多少?
因为在声明矢量时,我们不需要指定矢量的大小,所以我不确定矢量的最大大小。
谢谢。
我只是打印出v.max_size(),它在xcode中是9223372036854775807,我认为这是大小限制。