- 博客(13)
- 收藏
- 关注
原创 CSS之 Box Position
static浏览器默认分配位置,没有给定位置(not positioned)。效果就是没有效果relative先按照默认分配完整体所有位置后,根据元素被分配的默认位置定位现在位置。即使现在位置覆盖了其它元素的位置也继续执行,可以定位在其它元素的上边absolute根据最接近的上一个positioned(给定位置) ancestor位置定位现在位置fixed根据网页视窗定位现在位置(鼠标滑动网页视窗,元素位置不动) -- 浮窗广告Z-Index元素..
2022-02-28 22:59:43
207
原创 CSS 的创建和选择器
英文全称: Cascading Style Sheets,层叠样式表。 对HTML中元素进行排版。1.在HTML中添加CSS1.1 Inline Styles<h1 style="color : blue;">This is a heading</h1>上边的 style="color : blur;"就是插入的CSS,适用于稍微简单,没有那么复杂的CSS直接作用在想要作用的元素上,优先级最高。1.2 Internal Style<he
2022-02-28 22:28:57
285
原创 判断是否回文数(正序倒序一样的数)
回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。当然负数不是(-123 --> 321-)HighLeve:取数x的左右两端的数,如果相等把这两个数去掉,继续取两端数判断。这里先说一下取一个数的左边几位和右边几位怎么操作:取左边:取余(x /d)取左边i位,d就应该是10*(位数-i);取右边:除(x %d)取右边i位,d就应该是10*i;如果要去掉左边(右边)i位,其实就是取右边(左边)(位数-i)位总结一下: 除(/)操作,会留下左边的 ...
2021-11-10 23:09:15
1020
原创 快速排序(quick sort)
基本思路:快速排序每次只排定一个元素(也就是每次只把一个数放在它最终应该在的位置),然后递归的排这个数的左边和右边,直到整个数组有序。public int[] Sort(int[] array) { // corner case if (array == null || array.length <= 1) { return array; } // 使用快排排序 quickSort(array,left,right); return
2021-11-09 00:11:48
475
原创 反转一个单链表LinkedList
迭代法High Level : 创建一个null并让pre指向null(ListNode pre = null),cur指向head(LIstNode cur = head)。循环里面要做的是step1:每一次让cur指向pre(cur.next = pre)step2:pre和cur同步移动(因为cur.next现在已经变成pre了,(所以不能通过cur = cur.next来移动cur)所以得新建next指针指向没改变之前的cur.next,因此新建next指针并指向cur.nex.
2021-11-04 20:32:53
399
原创 把LinkedList的中的给定值删除
有可能删除head,可以使用dummy nodepublic ListNode remove(ListNode head,int target) { // corner case if (head == null) { return null; } // 创建一个dummy node并把head链接到dummy后面 ListNode dummy = new ListNode(-1); dummy.next = head;
2021-11-03 17:38:23
161
原创 合并两个有序的Linked List
High Level : 两个LinkedList分别两个指针从各自的head开始-->谁小取谁,取谁移谁。(也就是从各自的head开始,每次将两个指针所在的值进行比较,取出小的一个,然后将其指针向后移动,继续重复这个操作),直到其中一个List先取完了,再把另外一个List剩下的链接上去。public ListNode merge(ListNode one,ListNode two) { // corner case if (one == null && two
2021-11-03 17:14:17
770
原创 使用dummy在有序Linked List里面插入node,保持有序
在对Linked List进行操作时,当head有可能会改变时,给head前创建一dummy,并使其指向head--保持对head的控制权stop codition : cur == null || cur.value >= targetpublic ListNode insert(ListNode head,int target) { // 先创建要插入的N ListNode N = new ListNode(target); // corner case
2021-11-02 21:46:43
664
原创 在一有序Linked List中插入一个node,保持有序
例如:给定Linked List 1 --> 3 --> 6 --> 9 --> 13 --> null (要插入int target 0 7 14,分别对应三种情况1.插在最头,2.插在中间,3.插在最后)ListNode N = new ListNode(target)//首先创建一个要插入的nodecase 0 :给定的LinkedList 是nullreturn N;case 1 : target比first node还要小N.n...
2021-11-02 21:28:05
479
原创 Find Linked List中间的node
快慢指针法 :ListNode fast = head,fast每次走两步,ListNode slow = head,slow每次走一步,当fast走完的时候slow刚好走一半。(因为奇数,偶数一半不同)所以要对长度为奇数偶数分别讨论OddN1 --> N2 --> N3 --> N4 --> N5 --> nullslowfastN1 --> N2 --> N3 --> N4 --> N5 --> null...
2021-11-02 20:23:04
207
原创 给一个Linked List,找到给定索引(k)的node
需要 给一个头,ListNode head,和要找到索引int k然后需要ListNode cur = head 来标记当前是哪一个ListNode int Index =0 来记录当前node的Index(head的索引为0)public ListNode findIndex(ListNode head,int k){ // corner case 头是空或者k<0,肯定找不到(注意head索引是0) if (head == nu...
2021-11-02 19:52:04
155
原创 给一个Linked list,计算其长度
首先要知道第一个node所在抽屉编号,给一个输入 ListNode head然后需要ListNode cur 标记看到了哪一个ListNode,开始把head赋给cur int count = 0 计算数了多少node每数一个node,cur向后移一个,count++。最开始向下面这样:headN1 --> N2 --> N3 --> nullcur count = 0然后判断node是不是0,不是...
2021-11-02 19:29:59
433
原创 Create Linked List
每一个节点相当于一个抽屉,对应一个地址值,每一个抽屉里面有1. 名字(ListNode)2.value3.ListNode next = (下一个指向的地址值)class ListNode { public int value; // 储存值 public ListNode next; // it's a reference or address 小纸条、抽屉编号 public ListNode(int x){ // 构造函数 this....
2021-11-02 19:08:36
228
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人