我从一个从json端点获取数据的解析器获得了一个"产品"数组.
ngOnInit() {
this.products = this._route.snapshot.data.products;
console.log('products: ', this.products);
}
Run Code Online (Sandbox Code Playgroud)
其中一个对象中的一个对象是格式
{
"id": 3645,
"date": "2018-07-05T13:13:37",
"date_gmt": "2018-07-05T13:13:37",
"guid": {
"rendered": ""
},
"modified": "2018-07-05T13:13:37",
"modified_gmt": "2018-07-05T13:13:37",
"slug": "vpwin",
"status": "publish",
"type": "matrix",
"link": "",
"title": {
"rendered": "VPWIN"
},
"content": {
"rendered": "",
"protected": false
},
"featured_media": 0,
"parent": 0,
"template": "",
"better_featured_image": null,
"acf": {
"domain": "SMB",
"ds_rating": "3",
"dt_rating": ""
},
...
},
Run Code Online (Sandbox Code Playgroud)
我想要做的是按字段对此数组进行排序 title.rendered
在古代,在AngularJS中,我只是orderBy
在模板集中使用一个管道到这个字段.显然,这在Angular中已被删除,而且在进行研究时,似乎首选方法是对数据本身进行排序,例如ngOnInit
.
但我无法弄清楚如何排序products
的producs.title.rendered
.
刚刚面试,被问到Java是否可能出现内存泄漏。我不知道答案。所以我想知道:
给定一个BST树,我们必须根据输入(N)将树分成两个子树,其中subtree1由所有节点组成,小于或等于N,而子树2由所有大于或等于N的节点组成. N.
50
/ \
40 60
/ \ /
30 45 55
\
58
Run Code Online (Sandbox Code Playgroud)
输出:
50
/
40
/ \
30 45
60
/
55
\
58
Run Code Online (Sandbox Code Playgroud)
我已经提出了以下算法,但它无法正常工作:
static Node splitTree(Node root, Node root2, int k){
if(root == null)
return null;
while(root != null){
if(root.data > k)
root = root.left;
else if(root.data < k)
root = root.right;
else
{
root2=root.right;
root.right=null;
break;
}
}
return root2;
}
Run Code Online (Sandbox Code Playgroud) java ×2
algorithm ×1
angular ×1
arrays ×1
javascript ×1
memory-leaks ×1
sorting ×1
typescript ×1