遍历

js值的比较和使用foreach遍历数据和条件编译

匿名 (未验证) 提交于 2019-12-03 00:19:01
js是自动强制自由型语言:所以 所以此时如过要判断其类型:应该使用===来判断 使用for in遍历数据时取值时用【key】(无论是遍历的数组还是map类型)来取值如下: for(var i in arr){ } JavaScript的条件编译: /*@cc_on @*/ /*@if (@_jscript_version >= 4) alert("JScript version 4 or better"); @else @*/ alert("You need a more recent script engine."); /*@end @*/ 在使用条件编译是要先使用 /*@cc_on @*/ 来启用条件编译。 Global 对象从不直接使用,并且不能用 new 运算符创建。 Global 对象没有语法。直接调用其方法。 文章来源: js值的比较和使用foreach遍历数据和条件编译

JSONObject遍历并替换部分json值

匿名 (未验证) 提交于 2019-12-03 00:18:01
如何修改JSONObject 的值,如何替换json中的部分内容,比如检查报告我们再数据库存的是json格式的字符串varchar,然后前端传来确认更新报告的json,后台接口需要将前端传来的json里面的内容更新到后台数据库(当然,前端传来的不一定是完整的字符串,可能是一个,两个,总之只是部分不是全部)。这个时候就需要使用这个方案了。 @PutMapping( "/result/{checkNum}" ) public ApiReturnObject update(@PathVariable String checkNum,String dataStr) { //从数据库查出duix Result result= resultReposity .findByCheckNum (checkNum) ; //接收的参数 JSONObject jsonObj=JSON .parseObject (dataStr) ; JSONObject originObj=JSON .parseObject (result .getCheckresult ()) ; //单个替换 //originObj .put ( "AGE" , jsonObj .get ( "AGE" )) ; //遍历替换json里面的值 for (String key:jsonObj .keySet ()) {

leetcode 102. 二叉树的层次遍历

匿名 (未验证) 提交于 2019-12-03 00:18:01
给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。 例如: 给定二叉树: [3,9,20,null,null,15,7] , 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [ 3 ], [ 9 , 20 ], [ 15 , 7 ] ] ˼·: 二叉树的层次遍历通过队列来进行,先将root进队,进入循环。 判断队列是否为空,不为空将此时队列中的元素一个一个出队,同时将子女入队。 这样每次出队的元素都为一个层次中的。 这是广度优先搜索, 深度优先搜索用栈来进行。 代码: /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public : vector < vector <int> > levelOrder ( TreeNode * root ) { vector < vector <int> > vec ; if ( root == NULL ){ return vec ; } queue < TreeNode *

ArrayList嵌套HashMap

匿名 (未验证) 提交于 2019-12-03 00:18:01
ArrayList嵌套HashMap,并遍历ArrayList /* /* ArrayList集合嵌套HashMap集合并遍历。 需求: 假设ArrayList集合的元素是HashMap。有3个。 每一个HashMap集合的键和值都是字符串。 元素我已经完成,请遍历。 结果: 周瑜---小乔 吕布---貂蝉 郭靖---黄蓉 杨过---小龙女 令狐冲---任盈盈 林平之---岳灵珊 */ package cn.itcast_02; import java.util.ArrayList; import java.util.HashMap; import java.util.Set; public class ArrayListIncludeHashMapDemo { public static void main(String[] args) { // 创建集合对象 ArrayList<HashMap<String, String>> array = new ArrayList<HashMap<String, String>>(); // 创建元素1 HashMap<String, String> hm1 = new HashMap<String, String>(); hm1.put("周瑜", "小乔"); hm1.put("吕布", "貂蝉"); //

BST树的插入,删除,查找(递归和非递归),先序,中序,后序(递归和非递归)

匿名 (未验证) 提交于 2019-12-03 00:18:01
关于二叉查找树的操作还是挺重要的,所以在此实现了BST的相关操作。 二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。 首先实现BST的遍历操作吧,一般面试也喜欢问,比较重要的是各个遍历的非递归操作,在这里也就只实现非递归操作; 其中先序和中序遍历的非递归操作比较相似,主要思想就是将每个节点当做一个根节点进行操作。后序遍历稍微不同。下面进行代码的演示,以及相关解释: 首先针对先序遍历 Stack<TreeNode> snode = new Stack<>(); TreeNode p = root; while (!snode.isEmpty() || p != null) { if (p!=null) { System.out.print(p.value+" "); snode.push(p); p = p.left; }else{ TreeNode q = snode.pop(); p = q.right; } } 可以看到代码中利用了一个栈进行辅助,因为先序遍历的顺序是根-左-右,所以在向左节点进行遍历的时候,将节点输出,同时将节点放入栈中

利用二叉树遍历实现学生成绩排序模块设计(二叉排序树)

匿名 (未验证) 提交于 2019-12-03 00:15:02
源代码: #include <stdio.h> #include <stdlib.h> typedef struct tnode {   int id;   int score;   struct tnode *lchild,*rchild; }stu; void ins_student(stu **p,long id,int score) {   stu *s;   if(*p==NULL)   {     s=(stu *)malloc(sizeof(stu)); //插入学生信息     s->id=id;     s->score=score;     s->lchild=NULL;     s->rchild=NULL;     *p=s;   }   else if(score<(*p)->score)     ins_student(&((*p)->lchild),id,score);   else     ins_student(&((*p)->rchild),id,score); } //创建二叉排序树 stu *create_student() {   int id,score;   stu *root;   root=NULL;   printf("请输入学号和成绩(用,隔开,0结束!)");   printf("\n---------------------

建立二叉树,并完成三种遍历算法

匿名 (未验证) 提交于 2019-12-03 00:15:02
#include<iostream> #include<stack> #define TElemType char using namespace std; typedef struct BiTNode { TElemType data; struct BiTNode *lchild,*rchild; }BiTNode,*BiTree; //先序遍历的顺序建立二叉链表 void xCreateBiTree(BiTree &T) { char ch; cin>>ch; if(ch=='#') T=NULL; else { T=new BiTNode; T->data=ch; xCreateBiTree(T->lchild); xCreateBiTree(T->rchild); } } //先序遍历输出 void xPrintTree(BiTree T) { if(T) { cout<<T->data; xPrintTree(T->lchild); xPrintTree(T->rchild); } else { return; } } //中序遍历的顺序建立二叉链表 void zCreateBiTree(BiTree &T) { char ch; cin>>ch; if(ch=='#') T=NULL; else { T=new BiTNode; zCreateBiTree(T-

CAD关于图层显示图层操作(com接口c#语言)

匿名 (未验证) 提交于 2019-12-03 00:15:02
如下例子,得到层表,然后循环得到所有层表记录,并打开图层显示 例如代码 C#: private void ShowLayer() { MxDrawApplication app = new MxDrawApplication(); //返回数据库中的层表对象 MxDrawLayerTable layerTable = app.WorkingDatabase().GetLayerTable(); //创建一个遍历层表中所有图层的遍历器 MxDrawLayerTableIterator iter = layerTable.NewIterator(); if (iter == null) return; //移动当前遍历器位置 for (; !iter.Done(); iter.Step(true, false)) { //返回遍历器当前的层表记录 MxDrawLayerTableRecord layerTableRec = iter.GetRecord(); //设置图层关闭属性为false layerTableRec.IsOff = false; } } 文章例子运行效果: 显示隐藏图层前: 显示隐藏图层后: 来源:博客园 作者: ywl0224 链接:https://www.cnblogs.com/yzy0224/p/11738777.html

js递归遍历树结构(tree)

匿名 (未验证) 提交于 2019-12-03 00:14:01
如图: 代码: var treeList = []; //树结构数据 function forTree(treeList) { //遍历树函数 for (var i in treeList) { //循环遍历树 if (treeList[i].children) { //如果遍历树结构还有下一级-做操作 } else { //如果没有下一级做相应操作 return; } } } 来源:博客园 作者: 李广宁博客 链接:https://www.cnblogs.com/lgnblog/p/11652023.html