版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据结构课程设计报告(2010 / 2011 学年第二学期)题目: 线索二叉树的应用专业班级: 09计算机(2)班学生姓名:学号:指导教师:设计周数: 19、20周设计成绩:2011年7 月4 日需求分析:1、题目:线索二叉树的应用2、目的和任务:数据结构课程设计是计算机科学与技术专业集中实践性环节之一,是学习完数据结构课程后进行的一次全面的综合练习。其目的就是要达到理论与实际应用相结合,使学生能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养良好的程序设计技能。其任务为:要求:实现线索树建立、插入、删除、恢复线索的实现。3、数据输入输出:原始数据
2、要求输入二叉树的7个结点:1234567,输出的是一个二叉树,这就实现了二叉树的建立过程。然后对二叉树进行线索化。对其进行插入:在7结点处插入结点8;删除:删除结点8;恢复线索等功能。进行二叉树的初始化,依次输入,以*结束:1234567*线索二叉树的应用*1、进行二叉树线索化2、进行插入操作3、删除4、中序输出5、线索输出0、退出请选择:1已经实现二叉树的线索化,可选择5查看线索4、设计算法测试用例:(1)输入结点:1234567;(2)对输入的二叉树进行线索化;(3)查看二叉树的中序线索输出:4-2-5-1-6-3-7;(4)在7结点处插入结点8,此时完成线索化恢复,查看二叉树的中序线索输
3、出:4-2-5-1-6-3-8-7;(5)删除结点8,此时完成线索化恢复,发现结点8,ltag=1,rtag=1,查看二叉树的中序线索输出:4-2-5-1-6-3-7;(6)继续删除结点r,发现无该结点,则输入错误。二、数据结构的选择和概要设计1、数据结构二叉树是由n(n=0)个结点组成的有限集合,其中:(1)当n0时,为空二叉树。(2)当n0时,有且仅有一个特定的结点,称为二叉树的根,不相交的子集,其中每一个子集本身又是一棵二叉树,分别称为左子树和右子树。线索化是将二叉树转换成线索二叉树的过程。按某种遍历将二叉树线索化,只需在遍历过程中将二叉树中每个结点的空的左右孩子指针域分别修改为指向其前
4、驱和后继结点。(1)线索二叉树的结点的结构如下:ltaglchilddatartagrchild约定:Ltag=0 /表示lchild域指示该结点的左孩子Ltag=1 /表示lchild域指示该结点的前驱Rtag=0 /表示rchild域指示该结点的右孩子Rtag=1 /表示rchild域指示该结点的后继 (2)线索链表中结点类型说明: Typedef char datatype; Typedef struct node Int ltag,rtag; Datatype data; Struct node *lchild,*rchild;bithptr;(3)线索化算法:结点*pre 是结点*p
5、的前驱,而*p是*pre的后继。这样,当遍历到结点*p时,可以进行以下三步操作:1)若*p有空指针域,则将相应的标志置1.2)若*p的左线索标志已经建立(p-ltag=1),则可使其前驱线索化,令p-lchild=pre.3)若*pre的右线索标志已经建立(pre-rtag=1),则可使其后继线索化,令pre-rchild=p.如此,二叉树的线索化可以在二叉树的遍历过程完成,该算法应为相应顺序的遍历算法的一种变化形式。(4)二叉链表的建立:其算法描述如下:Bitree *crt_bt_pre(bitree *bt) Char ch; Ch=getchar( ); If(ch=) Bt=null
6、; Else Bt=(bitree *)malloc(sizeof(bitree); Bt-data=c; Bt-lchild=crt_bt_pre(bt-lchild); Bt-rchild=crt_bt_pre(bt-rchild); Return(bt);2、设计思想建立二叉树(即指在内存中建立二叉树的存储结构),建立一个二叉链表,需按某种顺序一次输入二叉树中的结点,且输入顺序必须隐含结点间的逻辑结构信息。对于一般的二叉树,需添加虚结点,使其成为完全二叉树。关键在于如何将新结点作为左孩子和右孩子连接到它的父结点上。可以设置一个队列,该队列是一个指针类型的数组,保存已输入的结点地址。操作:
7、(1)令队头指针front指向其孩子结点当前输入的建立链接的父结点,队尾指针rear指向当前输入的结点,初始:front=1,rear=0; (2)若rear为偶数,则该结点为父结点的左孩子;若rear为奇数,则该结点的右孩子;若父结点和孩子结点为虚结点,则无需链接。 (3)若父结点与其两个孩子结点的链接完毕,则令front=front+1,使front指向下一个等待链接的父结点。二叉树的中序线索化算法与中序遍历算法类似。只需要将遍历算法中访问结点的操作具体化为建立正在访问的结点与其非空中序前趋结点间线索。该算法应附设一个指针pre始终指向刚刚访问过的结点(pre的初值应为NULL),而指针p
8、指示当前正在访问的结点。结点*pre是结点*p的前趋,而*p是*pre的后继。结点插入算法:由线索二叉树的定义易知插入的节点定是个叶子节点,需注意线索的修改,可分为两种情况:1):插入的节点t是右儿子,t的中序后继是其父亲的中序后继,中序前驱是其父亲。2):插入的节点t是左儿子,t的中序前驱是其父亲的中序前驱,中序后继是其父亲。结点删除算法:删除的情况与搜索二叉树的删除的类似1):删除的节点p是叶子节点,直接删除,修改其父亲的线索。2):删除的节点p有一个儿子,p有一个左儿子,以p为根的左子树中的具有最大值节点的t中序后继是p的中序后继,中序前驱不变;p有一个右儿子,以p为根的右子中的具有最小
9、值节点t中序前驱是p的中序前驱,中序后继不变。3):删除的节点p有二个儿子,转化为叶子节点或只有一个儿子节点的删除。3、流程图开始定义二叉树T=CreatTree( )1=i输入i!=0输入选择菜单输入ii=1preThred(T)i=2Insert(T)i=3DeleteNode(T)i=4Inorder(T)退出详细设计和编码1、主函数void main()Bithptr *T;int i;/system(color 1a);T=CreatTree();printf(n);i=1;while(i)printf(t1 进行二叉树线索化n);printf(t2 进行插入操作n);printf(
10、t3 进入删除操作n);printf(t4 中序输出n);printf(t5 线索输出n);printf(t0 退出n);printf(t 请选择:);scanf(%d,&i);printf(n);switch(i)case 1:PreThread(T);printf(t已经实现二叉树的线索化n);printf(n);break;case 2:Insert(T);printf(n);break;case 3:T=DeleteNode(T);printf(n);break;case 4:Inorder(T);printf(n);break;case 5:PrintIndex(T);break;c
11、ase 0:exit(1);default:printf(errornt请继续选择:);2、中序线索化算法:void PreThread(Bithptr *root) /中序线索化算法,函数实现Bithptr *p;p=root; if(p) PreThread(p-lchild);/线索化左子树 if(pre&pre-rtag=1)pre-rchild=p; /前驱结点后继线索化 if(p-lchild=NULL) p-ltag=1;p-lchild=pre;if(p-rchild=NULL) /后继结点前驱线索化p-rtag=1;pre=p;PreThread(p-rchild);上机调试
12、做这个课程设计,想到用各种数据结构和主要的思想,反反复复的修改和改进,花费了好几天的时间。正式着手写程序只用了大概一天的时间,但是调试的时候却用了好几天。1、当用二叉链表作为二叉树的存储结构时。可以方便地找到某个结点的左右孩子,但一般情况下,无法直接摘到该结点在没中遍历序列中的前驱和后继接待你。为了解决这个问题,所以采用线索二叉树。但是在编写过程中,忽略了线索二叉树的改变,没有改变空的左孩子指针域,而后再看了一遍数据结构的相关指导教材,发现了错误,及时改正,将空的左孩子指针域改为指向其前驱。2、在进行线索化的编写过程中,出现了问题。开始只能对几点进行前驱线索化,而不能进行后继线索化。为此做了相
13、应调整:(1)若*p有空指针域,则将相应的标志置1。 (2)若*p的左线索标志已经建立,则可使其前驱线索化,令p-lchild=pre。 (3)若*pre的右线索标志已经建立,则可使其后继线索化,令pre-rchild=p。 3、在编写中序线索二叉树中的后继查找算法时,只编写了其中一种情况,应该有两种情况(1)*p的右子树为空,则p-rchild为右线索,指向*p的后继结点。(2)若*p的右子树非空,根据中序遍历的顺序,*p的后继结点为其右子树中最左下的结点。心得体会本次课程设计,使我对数据结构这门课程有了更深入的理解。数据结构是一门实践性较强的课程,为了学好这门课程,必须在掌握理论知识的同时
14、,加强上机实践。我的课程设计题目是线索二叉树的应用。刚开始做这个程序的时候,感到完全无从下手,甚至让我觉得完成这次程序设计根本就是不可能的,于是开始查阅各种资料以及参考文献,之后便开始着手写程序,写完运行时有很多问题。特别是实现线索二叉树的删除运算时很多情况没有考虑周全,经常运行出现错误,但通过同学间的帮助最终基本解决问题。在本课程设计中,我明白了理论与实际应用相结合的重要性,并提高了自己组织数据及编写大型程序的能力。培养了基本的、良好的程序设计技能以及合作能力。这次课程设计同样提高了我的综合运用所学知识的能力。并对VC有了更深入的了解。数据结构是一门实践性很强的课程,上机实习是对学生全面综合
15、素质进行训练的一种最基本的方法,是与课堂听讲、自学和练习相辅相成的、必不可少的一个教学环节。上机实习一方面能使书本上的知识变“活”,起到深化理解和灵活掌握教学内容的目的;另一方面,上机实习是对学生软件设计的综合能力的训练,包括问题分析,总体结构设计,程序设计基本技能和技巧的训练。此外,还有更重要的一点是:机器是比任何教师更严厉的检查者。因此,在“数据结构”的学习过程中,必须严格按照老师的要求,主动地、积极地、认真地做好每一个实验,以不断提高自己的编程能力与专业素质。通过这段时间的课程设计,我认识到数据结构是一门比较难的课程。需要多花时间上机练习。这次的程序训练培养了我实际分析问题、编程和动手能
16、力,使我掌握了程序设计的基本技能,提高了我适应实际,实践编程的能力。 总的来说,这次课程设计让我获益匪浅,对数据结构也有了进一步的理解和认识。六、测试结果及其分析如图1所示,初始化输入二叉树,实现线索化,查看线索输出: 图1如图2所示,在7结点处插入结点8,恢复线索化,查看中序线索输出为: 图2如图3所示,删除结点8,恢复线索化,查看中序线索输出为: 图3如图4所示,删除结点r,发现无该结点,则输出为: 图4七、参考文献(1)严慰敏 编数据结构习题集清华大学出版社(2)胡学军 编数据结构高等教育出版社附录:源程序:#include #include malloc.h#include windo
17、ws.h#define maxsize 30 /规定树中结点的最大数目typedef struct node /定义数据结构int ltag,rtag; /表示child域指示该结点是否孩子char data; /记录结点的数据struct node *lchild,*rchild; /记录左右孩子的指针Bithptr;Bithptr *Qmaxsize; /建队,保存已输入的结点的地址Bithptr *CreatTree() /建树函数,返回根指针char ch;int front,rear;Bithptr *T,*s;T=NULL;front=1;rear=0; /置空二叉树printf(
18、进行初始化,请依次输入n);ch=getchar(); /输入第一个字符while(ch!=#) /判断是否为结束字符s=NULL;if(ch!=) /判断是否为虚结点s=(Bithptr *)malloc(sizeof(Bithptr);s-data=ch;s-lchild=NULL;s-rchild=NULL;s-rtag=0;s-ltag=0;rear+;Qrear=s; /将结点地址加入队列中if(rear=1)T=s; /输入为第一个结点为根结点elseif(s!=NULL&Qfront!=NULL) /孩子和双亲结点均不是虚结点if(rear%2=0)Qfront-lchild=s
19、;else Qfront-rchild=s;if(rear%2=1)front+;ch=getchar();return T;void Inorder(Bithptr *T) /中序遍历if(T)if(T-ltag!=1)Inorder(T-lchild);printf(%c,T-data);if(T-rtag!=1)Inorder(T-rchild);Bithptr *pre=NULL;void PreThread(Bithptr *root) /中序线索化算法,函数实现Bithptr *p;p=root;if(p)PreThread(p-lchild);/线索化左子树if(pre&pre-
20、rtag=1)pre-rchild=p; /前驱结点后继线索化if(p-lchild=NULL)p-ltag=1;p-lchild=pre;if(p-rchild=NULL) /后继结点前驱线索化p-rtag=1;pre=p;PreThread(p-rchild);void PrintIndex(Bithptr *t) /输出线索Bithptr *f;f=t;if(f)if(f-ltag=1&f-lchild=NULL&f-rtag=1)printf(【%c】,f-data); /如果是第一个结点if(f-ltag=1&f-lchild!=NULL)printf(%c【%c】,f-lchild
21、-data,f-data); /如果此结点有前驱就输出前驱和此结点if(f-ltag=1&f-rtag=1&f-rchild!=NULL)printf(%c,f-rchild-data); /如果此结点有前驱也有后继,就输出后继else if(f-rtag=1&f-rchild!=NULL)printf(【%c】%c,f-data,f-rchild-data);/如果没有前驱,就输出此结点和后继printf(n);if(f-ltag!=1)PrintIndex(f-lchild);if(f-rtag!=1)PrintIndex(f-rchild);Bithptr *SearchChild(Bi
22、thptr *point,char findnode) /查找孩子结点函数Bithptr *point1,*point2;if(point!=NULL)if(point-data=findnode) return point;elseif(point-ltag!=1) point1=SearchChild(point-lchild,findnode);if(point1!=NULL)return point1;if(point-rtag!=1) point2=SearchChild(point-rchild,findnode);if(point2!=NULL)return point2;ret
23、urn NULL;elsereturn NULL;Bithptr *SearchPre(Bithptr *point,Bithptr *child) /查找父亲结点函数Bithptr *point1,*point2;if(point!=NULL)if(point-ltag!=1&point-lchild=child)|(point-rtag!=1&point-rchild=child) return point;elseif(point-ltag!=1)point1=SearchPre(point-lchild,child);if(point1!=NULL)return point1;if(p
24、oint-rtag!=1)point2=SearchPre(point-rchild,child);if(point2!=NULL)return point2;return NULL;elsereturn NULL;void Insert(Bithptr *root)char ch;char c;Bithptr *p1,*child,*p2;printf(请输入要插入的结点的信息:);scanf(%c,&c);scanf(%c,&c);p1=(Bithptr *)malloc(sizeof(Bithptr); /插入的结点信息p1-data=c;p1-lchild=NULL;p1-rchild
25、=NULL;p1-rtag=0;p1-ltag=0;printf(输入查找的结点信息:);scanf(%c,&ch);scanf(%c,&ch);child=SearchChild(root,ch); /查孩子结点的地址if(child=NULL)printf(没有找到结点n);system(pause);return ;else printf(发现结点%cn,child-data);if(child-ltag=0) /当孩子结点有左孩子的时候p2=child;child=child-lchild;while(child-rchild&child-rtag=0) /找到左子树下,最右结点chi
26、ld=child-rchild;printf(发现结点%cn,child-data);p1-rchild=child-rchild; /后继化p1-rtag=1;child-rtag=0;child-rchild=p1; /连接p1-lchild=child; /前驱化p1-ltag=1;else /当孩子结点没有左孩子的时候p1-lchild=child-lchild; /前驱化child-ltag=0;p1-ltag=1;child-lchild=p1;p1-rchild=child;p1-rtag=1;printf(nt插入结点操作已经完成,并同时完成了线索化的恢复n);Bithptr
27、* DeleteNode(Bithptr *t)Bithptr *child,*pre,*s,*q;char ch;printf(输入查找的结点信息:);ch=getchar();ch=getchar();child=SearchChild(t,ch);printf(发现结点:%cn,child-data);printf(ltag=%d,rtag=%dn,child-ltag,child-rtag);pre=SearchPre(t,child);printf(发现结点:%cn,pre-data);if(NULL=child)printf(没有找到结点:);return t;system(pau
28、se);if(child=pre-lchild|child=pre) /是父亲结点的左孩子if(1=child-ltag&1=child-rtag)/孩子结点无左右pre-lchild=child-lchild;pre-ltag=1;if(child-lchild!=NULL)if(child-lchild-rtag=1)child-lchild-rchild=pre;free(child);else if(1!=child-ltag&1=child-rtag)/孩子结点有左无右pre-lchild=child-lchild;s=child-lchild;while(s-rchild)s=s-
29、rchild;s-rchild=child-rchild;free(child);else if(1=child-ltag&1!=child-rtag)/孩子结点有右无左pre-lchild=child-rchild;s=child-rchild;while(s-lchild)s=s-lchild;s-lchild=child-lchild;if(child-lchild!=NULL)if(child-lchild-rtag=1)child-lchild-rchild=pre;free(child);else if(1!=child-ltag&1!=child-rtag)/孩子结点左右都有pr
30、e-lchild=child-lchild;s=child-rchild;while(s-lchild)s=s-lchild;s-lchild=child-lchild-rchild;/把孩子结点的左孩子的右子树接到孩子右子树的最左下结点if(child-lchild-rtag!=1)s-ltag=0;q=child-lchild;while(q-rchild)q=q-rchild;q-rchild=s;child-lchild-rchild=child-rchild;child-lchild-rtag=0;free(child);if(child=pre-rchild) /是父亲结点的右孩子
31、if(1=child-ltag&1=child-rtag)/孩子结点无左右pre-rchild=child-rchild;pre-rtag=1;if(child-rchild!=NULL)if(child-rchild-ltag=1)child-rchild-lchild=pre;free(child);else if(1!=child-ltag&1=child-rtag)/孩子结点有左无右pre-rchild=child-lchild;s=child-lchild;while(s-rchild)s=s-rchild;s-rchild=child-rchild;if(child-rchild!
32、=NULL)if(child-rchild-ltag=1)child-rchild-lchild=pre;free(child);else if(1=child-ltag&1!=child-rtag)/孩子结点有右无左pre-rchild=child-rchild;s=child-rchild;while(s-lchild)s=s-lchild;s-lchild=child-lchild;free(child);else if(1!=child-ltag&1!=child-rtag)/孩子结点左右都有/*pre-lchild=child-lchild;s=child-rchild;while(
33、s-lchild)s=s-lchild;s-lchild=child-lchild-rchild;/把孩子结点的左孩子的右子树接到孩子右子树的最左下结点if(child-lchild-rtag!=1)s-ltag=0;q=child-lchild;while(q-rchild)q=q-rchild;q-rchild=s;child-lchild-rchild=child-rchild;child-lchild-rtag=0;*/pre-rchild=child-rchild;s=child-lchild;while(s-rchild)s=s-rchild;s-rchild=child-rchi
34、ld-lchild;/把孩子结点的左孩子的右子树接到孩子右子树的最右下结点if(child-rchild-ltag!=1)s-rtag=0;q=child-rchild;while(q-lchild)q=q-lchild;q-lchild=s;child-rchild-lchild=child-lchild;child-rchild-ltag=0;free(child);printf(nt插入结点操作已经完成,并同时完成了线索化的恢复n);printf(find %c,child-data);return t;void main()Bithptr *T;int i;/system(color
35、1a);T=CreatTree();printf(n);i=1;while(i)printf(t1 进行二叉树线索化n);printf(t2 进行插入操作n);printf(t3 进入删除操作n);printf(t4 中序输出n);printf(t5 线索输出n);printf(t0 退出n);printf(t 请选择:);scanf(%d,&i);printf(n);switch(i)case 1:PreThread(T);printf(t已经实现二叉树的线索化n);printf(n);break;case 2:Insert(T);printf(n);break;case 3:T=Delet
36、eNode(T);printf(n);break;case 4:Inorder(T);printf(n);break;case 5:PrintIndex(T);break;case 0:exit(1);default:printf(errornt请继续选择:);软件算法综合设计评 语软件算法综合设计成 绩指导教师(签字) 年 月 日原文已完。下文为附加文档,如不需要,下载后可以编辑删除,谢谢!施工组织设计本施工组织设计是本着“一流的质量、一流的工期、科学管理”来进行编制的。编制时,我公司技术发展部、质检科以及项目部经过精心研究、合理组织、充分利用先进工艺,特制定本施工组织设计。工程概况:西夏建
37、材城生活区27#、30#住宅楼位于银川市新市区,橡胶厂对面。本工程由宁夏燕宝房地产开发开发,银川市规划建筑设计院设计。本工程耐火等级二级,屋面防水等级三级,地震防烈度为8度,设计使用年限50年。本工程建筑面积:27#m2;30# m2。室内地坪 m为准,总长27#m;30# m。总宽27#m;30# m。设计室外地坪至檐口高度18.6 00m,呈长方形布置,东西向,三个单元。本工程设计屋面为坡屋面防水采用防水涂料。外墙水泥砂浆抹面,外刷浅灰色墙漆。内墙面除卫生间200300瓷砖,高到顶外,其余均水泥砂桨罩面,刮二遍腻子;楼梯间内墙采用50厚胶粉聚苯颗粒保温。地面除卫生间200200防滑地砖,楼
38、梯间50厚细石砼1:1水泥砂浆压光外,其余均采用50厚豆石砼毛地面。楼梯间单元门采用楼宇对讲门,卧室门、卫生间门采用木门,进户门采用保温防盗门。本工程窗均采用塑钢单框双玻窗,开启窗均加纱扇。本工程设计为节能型住宅,外墙均贴保温板。本工程设计为砖混结构,共六层。基础采用C30钢筋砼条形基础,上砌MU30毛石基础,砂浆采用M10水泥砂浆。一、二、三、四层墙体采用M10混合砂浆砌筑MU15多孔砖;五层以上采用M混合砂浆砌筑MU15多孔砖。本工程结构中使用主要材料:钢材: = 1 * ROMAN I级钢, = 2 * ROMAN II级钢;砼:基础垫层C10,基础底板、地圈梁、基础构造柱均采用C30,
39、其余均C20。本工程设计给水管采用PPR塑料管,热熔连接;排水管采用UPVC硬聚氯乙烯管,粘接;给水管道安装除立管及安装IC卡水表的管段明设计外,其余均暗设。本工程设计采暖为钢制高频焊翅片管散热器。本工程设计照明电源采用BV铜芯线,插座电源等采用BV4铜芯线;除客厅为吸顶灯外,其余均采用座灯。施工部署及进度计划1、工期安排本工程合同计划开工日期:2004年8月21日,竣工日期:2005年7月10日,合同工期315天。计划2004年9月15日前完成基础工程,2004年12月30日完成主体结构工程,2005年6月20日完成装修工种,安装工程穿插进行,于2005年7月1日前完成。具体进度计划详见附图
40、1(施工进度计划)。2、施工顺序 = 1 * GB2 基础工程工程定位线(验线)挖坑钎探(验坑)砂砾垫层的施工基础砼垫层刷环保沥青 基础放线(预检)砼条形基础刷环保沥青 毛石基础的砌筑构造柱砼地圈梁地沟回填工。 = 2 * GB2 结构工程结构定位放线(预检)构造柱钢筋绑扎、定位(隐检)砖墙砌筑(50cm线找平、预检)柱梁、顶板支模(预检)梁板钢筋绑扎(隐检、开盘申请)砼浇筑下一层结构定位放线重复上述施工工序直至顶。 = 3 * GB2 内装修工程门窗框安装室内墙面抹灰楼地面门窗安装、油漆五金安装、内部清理通水通电、竣工。 = 4 * GB2 外装修工程外装修工程遵循先上后下原则,屋面工程(包
41、括烟道、透气孔、压顶、找平层)结束后,进行大面积装饰,塑钢门窗在装修中逐步插入。施工准备现场道路本工程北靠北京西路,南临规划道路,交通较为方便。场内道路采用级配砂石铺垫,压路机压。机械准备 = 1 * GB2 设2台搅拌机,2台水泵。 = 2 * GB2 现场设钢筋切断机1台,调直机1台,电焊机2台,1台对焊机。 = 3 * GB2 现场设木工锯,木工刨各1台。 = 4 * GB2 回填期间设打夯机2台。 = 5 * GB2 现场设塔吊2台。3、施工用电施工用电已由建设单位引入现场;根据工程特点,设总配电箱1个,塔吊、搅抖站、搅拌机、切断机、调直机、对焊机、木工棚、楼层用电、生活区各配置配电箱
42、1个;电源均采用三相五线制;各分支均采用钢管埋地;各种机械均设置接零、接地保护。具体配电箱位置详见总施工平面图。施工用水施工用水采用深井水自来水,并砌筑一蓄水池进行蓄水。楼层用水采用钢管焊接给水管,每层留一出水口;给水管不置蓄水池内,由潜水泵进行送水。生活用水生活用水采用自来水。劳动力安排 = 1 * GB2 结构期间:瓦工40人;钢筋工15人;木工15人;放线工2人;材料1人;机工4人;电工2人;水暖工2人;架子工8人;电焊工2人;壮工20人。 = 2 * GB2 装修期间抹灰工60人;木工4人;油工8人;电工6人;水暖工10人。四、主要施工方法1、施工测量放线 = 1 * GB2 施工测量
43、基本要求A、西夏建材城生活区17#、30#住宅楼定位依据:西夏建材城生活区工程总体规划图,北京路、规划道路永久性定位B、根据工程特点及建筑工程施工测量规程DBI012195,4、3、2条,此工程设置精度等级为二级,测角中误差12,边长相对误差1/15000。C、根据施工组织设计中进度控制测量工作进度,明确对工程服务,对工程进度负责的工作目的。 = 2 * GB2 工程定位A、根据工程特点,平面布置和定位原则,设置一横一纵两条主控线即27#楼:(A)轴线和(1)轴线;30#楼:(A)轴线和(1)轴线。根据主轴线设置两条次轴线即27#楼:(H)轴线和(27)轴线;30#楼:(H)轴线和(27)轴线
44、。 B、主、次控轴线定位时均布置引桩,引桩采用木桩,后砌一水泥砂浆砖墩;并将轴线标注在四周永久性建筑物或构造物上,施测完成后报建设单位、监理单位确认后另以妥善保护。C、控轴线沿结构逐层弹在墙上,用以控制楼层定位。D、水准点:建设单位给定准点,建筑物.500m。 = 3 * GB2 基础测量A、在开挖前,基坑根据平面布置,轴线控制桩为基准定出基坑长、宽度,作为拉小线的依据;根据结构要求,条基外侧1100mm为砂砾垫层边,考虑放坡,撒上白灰线,进行开挖。B、在垫层上进行基础定位放线前,以建筑物平面控制线为准,校测建筑物轴线控制桩无误后,再用经纬仪以正倒镜挑直法直接投测各轴线。C、标高由水准点引测至
45、坑底。 = 4 * GB2 结构施工测量A、首层放线验收后,主控轴一引至外墙立面上,作为以上务层主轴线竖身高以测的基准。B、施工层放线时,应在结构平面上校投测轴线,闭合后再测设细部尺寸和边线。C、标高竖向传递设置3个标高点,以其平均点引测水平线折平时,尽量将水准仪安置在测点范围内中心位置,进行测设。2、基坑开挖本工种设计地基换工,夯填砂砾垫层1100mm;根据此特点,采用机械大开挖,留200mm厚进行挖工、铲平。开挖时,根据现场实际土质,按规范要求1:0.33放坡,反铲挖掘机挖土。开挖出的土,根据现场实际情况,尽量留足需用的好土,多余土方挖出,避免二次搬运。人工开挖时,由技术员抄平好水平控制小
46、木桩,用方铲铲平。挖掘机挖土应该从上而下施工,禁止采用挖空底脚的操作方法。机械挖土,先发出信号,挖土的时候,挖掘机操作范围内,不许进行其他工作,装土的时候,任何人都不能停留在装土车上。3、砌筑工程 = 1 * GB2 材料砖:MU15多孔砖,毛石基础采用MU30毛石。砂浆:0.00以下采用M10水泥砂浆,一、二、三、四层采用M10混合砂浆,五层以上采用M7.5混合砂浆。 = 2 * GB2 砌筑要求A、开工前由工长对所管辖班组下发技术交底。B、砌筑前应提前浇水湿润砖块,水率保持在1015。C、砌筑采用满铺满挤“三一砌筑法“,要求灰浆饱满,灰缝812mm。D、外墙转角处应同时砌筑,内外墙交接处必
47、须留斜槎,槎子长度不小于墙体高度的2/3,槎子必须平直、通顺。E、隔墙与墙不同时砌筑又不留成斜槎时可于墙中引出阳槎或在墙的灰缝中预埋拉结筋,每道不少于2根。F、接槎时必须将表面清理干净,浇水湿润,填实砂浆,保持灰缝平直。G、砖墙按图纸要求每50mm设置26钢筋与构造柱拉结,具体要求见结构总说明。H、施工时需留置临时洞口,其侧边离交接处的墙面不少于500mm,顶部设边梁。4、钢筋工程 = 1 * GB2 凡进场钢筋须具备材质证明,原材料须取样试验,经复试合格后方可使用。 = 2 * GB2 钢筋绑扎前应仔细对照图纸进行翻样,根据翻样配料,施工前由工长对所管辖班组下发技术交底,准备施工工具,做好施
48、工的准备工作。 = 3 * GB2 板中受力钢筋搭接, = 1 * ROMAN I级钢30d, = 2 * ROMAN II级钢40d,搭接位置:上部钢筋在跨中1/3范围内,下部钢筋在支座1/3范围内。 = 4 * GB2 钢筋保护层:基础40mm,柱、梁30mm,板20mm。保护层采用50mm50mm的水泥砂浆块。板上部钢筋用马凳按梅花状支起。 = 5 * GB2 所有钢筋绑扎,须填写隐检记录,质评资料及目检记录,验收合格后方可进行下道工序。5、砼工程 = 1 * GB2 水泥进场后须做复试,经复试合格后由试验室下达配合比。施工中严格掌握各种材料的用量,并在搅拌机前进行标识,注明每立方米、每
49、盘用量。同时搅拌时,须车车进磅,做好记录。 = 2 * GB2 浇筑前,对模板内杂物及油污、泥土清理干净。 = 3 * GB2 投料顺序:石子水泥砂子。 = 4 * GB2 本工程均采用插入式振捣器,一次浇筑厚度不宜超过振捣器作用部分长度的倍,捣实砼的移动间距不宜大于振捣器作用半径的倍。 = 5 * GB2 砼浇筑后1昼夜浇水养护,养护期不少于7d,砼强度未达到MPa之前不得上人作业。6、模板工程 = 1 * GB2 本工程模板采用钢木混合模板。模板支搭的标高、截面尺寸、平整度、垂直度应达到质量验收标准,以满足其钢度,稳定性要求。 = 2 * GB2 模板支撑应牢固可靠,安装进程中须有防倾覆的
50、临时固定措施。 = 3 * GB2 本工程选用851脱模剂,每拆除一次模板经清理后涂刷脱模剂,再重新组装,以保证砼的外观质量。架子工程 = 1 * GB2 本工程采用双排架子防护,外设立杆距墙2m,里皮距墙50cm,立杆间距,顺水间距,间距不大于1m。 = 2 * GB2 架子底部夯实,垫木板,绑扫地杆。 = 3 * GB2 为加强架子的稳定性,每七根立杆间设十字盖,斜杆与地面夹角60o。 = 4 * GB2 为防止脚平架外倾,与结构采用钢性拉接,拉接点间距附和“垂四平六“的原则。 = 5 * GB2 外防护架用闭目式安全网进行封闭,两平网塔接和网下口必须绑孔紧密。 = 6 * GB2 结构架
51、子高出作业层1m,每步架子满铺脚手板,要求严密牢固并严禁探头板。装饰工程装饰工程施工前,要组织质监部门、建设、设计、施工单位四方参加的主体结构工程核验收,对已完全体分部工程进行全面检查、发现问题及时处理,清除隐患,并做好装饰前材料、机具及技术准备工作。1、根据预算所需材料数量,提出材料进场日期,在不影响施工用料的原则下,尽量减少施工用地,按照供料计划分期分批组织材料进场。2、将墙面找方垂直线,清理基层,然后冲筋,按照图纸要求,分层找平垂直,阴阳角度方正,然后拉线作灰饼。底子灰应粘结牢固,并用刮杠刮平,木抹子抹平。3、罩面应均匀一致,并应在终凝前刮平压光,上三遍灰抹子。4、油漆、涂料施工:油漆工
52、程施工时,施工环境应清洁干净,待抹灰、楼地面工程全部完工后方可施工,油漆涂刷前被涂物的表面必须干燥、清洁,刷漆时要多刷多理不流坠,达到薄厚均匀,色调一致,表面光亮。墙面涂料基层要求现整,对缝隙微小孔洞,要用腻子找平,并用砂纸磨平。为了使颜色一致,应使用同一配合比的涂料,使用时涂料搅匀,方可涂刷,接槎外留在阴阳角外必须保证涂层均匀一致表面不显刷纹。楼地面工程楼地面工程只作50厚豆石砼垫层。做垫层必须先冲筋后做垫层,其平整度要控制在4mm以内,加强养护45天后,才能进行上层施工。10、层面工程1、屋面保温层及找平层必须符合设计要求,防水采用防水卷材。2、做水泥砂浆找平层表面应平整压光,屋面与女儿墙
53、交接处抹成R150mm圆角。3、本工程屋面材料防水,专业性强,为保证质量,我们请专业人员作防水层。4、原材料在使用前经化验合格后才能使用,不合格材料严禁使用。11、水、暖、电安装工程 = 1 * GB2 管道安装应选用合格的产品,并按设计放线,坡度值及坡向应符合图纸和规范要求。 = 2 * GB2 水、暖安装前做单项试压,完毕后做通、闭水后试验和打压试验,卫生间闭水试验不少于24小时。 = 3 * GB2 电预埋管路宜沿最近线路敷设,应尽量减少弯曲,用线管的弯曲丝接套丝,折扁裂缝焊接,管口应套丝用堵头堵塞。油漆防腐等均符合图纸各施工规范及质量评定标准。 = 4 * GB2 灯具、插座、开关等器
54、具安装,其标高位置应符合设计要求,表面应平直洁净方正。 = 5 * GB2 灯具、插座、开关等器具必须选用合格产品,不合格产品严禁使用。 = 6 * GB2 做好各种绝缘接地电阻的测试和系统调整记录,检查配线的组序一定要符合设计要求。五、预防质量通病之措施本工程按优质工程进行管理与控制,其优质工程的目标体系与创优质工程的保证措施在本工程施工组织设计中做了详述。本措施不再述。创优质工程除对各分部、分项、工序工程施工中,精心操作,一丝不苟、高标准严要求作业外,关键是防止质量通病。为此,提出防止通病的作业措施如下:1、砖墙砌体组砌方法: = 1 * GB2 、组砌方法:一顺一丁组砌,由于这种方法有较
55、多的丁砖,加强了在墙体厚度方向的连结,砌体的抗压强度要高一些。 = 2 * GB2 、重视砖砌体水平灰缝的厚度不均与砂浆饱满度: = 1 * GB3 、水平灰缝不匀:规范规定砖砌体水平灰缝厚度与竖向灰缝宽度一般为10mm,但不应小于8mm,也不应小于12mm。砂浆的作用:一是铺平砖的砌筑表面,二是将块体砖粘接成一个整体。规范中之所以有厚度和宽度要求,是由于灰缝过薄,使砌体产生不均匀受力,影响砌体随载能力。如果灰缝过厚,由于砂浆抗压强度低于压的抗压可度。在荷载作用下,会增大砂浆的横向变形,降低砌体的强度。试验研究表明,当水平灰缝为12mm时,砖砌体的抗压强度极限,仅为10mm厚时的7075,所以
56、要保证水平灰缝厚度在812mm之间。怎样确保水平灰缝的厚度呢?A、皮数杆上,一定将缝厚度标明、标准。B、砌砖时,一定要按皮数杆的分层挂线,将小线接紧,跟线铺灰,跟线砌筑。C、砌浆所用之中砂,一定要过筛,将大于5mm的砂子筛掉。D、要选砖,将过厚的砖剔掉。E、均匀铺灰,务使铺灰之厚度均匀一致。坚持“一块砖、一铲灰、一揉挤“的“三一“砌砖法“。 = 2 * GB3 砂浆必须满铺,确保砂浆饱满度。规范规定:多孔砖砌体,水平灰缝的砂浆饱满度不得低于80,这是因为,灰缝的饱满度,对砌体的强度影响很大。比如:根据试验研究,当水平灰缝满足80以上,竖缝饱满度满足60以上时,砌体强度较不饱满时,要提高23倍,
57、怎样保证灰缝饱满度呢?A、支持使用所述的“三一“砌砖法,即“一块砖、一铲灰、一揉挤“。B、水平缝用铺浆法(铺浆长度50cm)砌筑,竖缝用挤浆法砌筑,竖缝还要畏助以加浆法,以使竖向饱满,绝不可用水冲灌浆法。C、砂浆使用时,如有淅水,须作二次拌合后再用。绝不可加水二次拌合。拌好的砂浆,须于3小时之内使用完毕。D、不可以干砖砌筑。淋砖时,一般以15含水率为宜。(约砖块四周浸水15mm左右)。 = 3 * GB3 注意砌砖时的拉结筋的留置方法:砖砌体的拉结筋留置方法,按设计要求招待。如设计没有具体规定时,按规范执行。规范规定“拉结筋的数量每12cm厚墙放1根6钢筋,沿墙高每50cm留一组。埋入长度从墙
58、的留槎处算起,每边均100cm,末端应有弯钩”见图。规范还规定:“构造柱与墙连拉处,宜砌成马牙槎,并沿墙高每50cm设26拉结钢筋,每边伸入墙内100cm。2、预防楼梯砼踏步掉角:楼梯踏步浇筑砼后,往往因达不到砼强度要求,就因施工需要提前使用,既便有了足够强度,使用不慎,都会掉楞掉角。而且有了掉角,修补十分困难,且不定期牢固。为此宜采用两种方式予以防治: = 1 * GB2 踏步楞角上,在浇筑砼时增设防护钢筋。 = 2 * GB2 踏步拆模时,立即以砂袋将踏步覆盖。(水泥袋或用针织袋装砂)既有利于砼养护,又可保护踏步楞角。3、楼梯弊端的预防:防止踏步不等高:踏步不等高,既不美观,又影响使用。踏
59、步不等高现象,一般发生在最上或最下一步踏步中。产生的原则,一是建筑标高与结构标高不吻合。二是将结构标高误为建筑标高。三是施工粗心,支模有误。为此,浇筑楼梯之间: = 1 * GB2 仔细核查楼梯结构图与建筑图中的标高是否吻合。经查核与细致计算无误后,再制作安装模板。 = 2 * GB2 浇筑砼中,往往由于操作与模板细微变形,也会使踏步有稍话误差。这一个误差,要在水泥砂浆罩面时予以调整。为使罩面有标准。在罩面之前,根据平台标高在楼梯侧面墙上弹出一道踏步踏级的标准斜线。罩面抹灰时,便踏步的外阳角恰恰落在这一条斜线上。这样做,罩面完成后,踏步的级高级宽就一致了。 = 3 * GB2 如果,施工出现踏
60、步尺寸有较大误差,一定要先行剔凿,并用细石砼或高强度水泥砂浆调整生,再做罩面。4、堵好脚手眼:堵脚手眼做得好坏,直接影响装修质量。一是影响墙面抹灰之脱落、开裂也空鼓;二是洒水可沿已开裂的脚手眼进入室内。因此,堵脚手眼的工作万不可忽视、大意: = 1 * GB2 将脚手眼孔内的砂浆、灰尘凿掉,清除洁净,洒水湿透眼内孔壁。 = 2 * GB2 将砖浸水湿透。脚手眼内外同时堵砌,绝不准用干砖堵塞。 = 3 * GB2 用“一砖、一铲灰、一挤塞“三一砌砖法堵塞,绝不准用碎块碴堵塞。 = 4 * GB2 砂浆必须饱满(最后的一块砖堵完后,用竹片或扁平钢筋将砂浆塞实,刮平,灰缝要均匀、实心实意,不准不刮浆
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版绿色建筑砌墙材料研发与应用劳务分包合同3篇
- 2025版活体购买合同风险防控与管理规范2篇
- 2025版汽车销售商与经销商合作协议范本3篇
- 2024年网络安全软件外包项目合作协议样本3篇
- 2025版钢铁企业固定资产贷款担保合同3篇
- 2024年酒糟销售协议
- 2024年特种材料大门制造与施工合同3篇
- 2024年版民间借款合同样本
- 2025版铲车租赁与工程现场环境治理合同3篇
- 2024年汽车零部件打胶防漏合同
- word 公章 模板
- T∕ZSQX 008-2020 建设工程全过程质量行为导则
- ISO-IEC17025-2017实验室管理体系全套程序文件
- 业务员手册内容
- pH值的测定方法
- 输出轴的机械加工工艺规程及夹具设计
- 元旦文艺汇演校长致辞
- 国家开放大学电大本科《管理案例分析》2023-2024期末试题及答案试卷编号:1304
- 离合器接合叉机械工艺说明书
- PWM脉宽直流调速系统设计及 matlab仿真验证
- 蜂窝煤成型机设计方案.doc
评论
0/150
提交评论