目前本站已有 十几万 份求职资料啦!


IT公司笔试常考的算法题

12-17 15:54:36 来源:http://www.qz26.com 笔试题目   阅读:8182
导读:char str1[] = "abractyeyt", str2[] = "dgdsaeactyey";char *strResult = MaxSubString(str1, str2);printf("str1=%s\nstr2=%s\nMaxSubString=%s\n", str1, str2, strResult);}24、不开辟用于交换数据的临时空间,如何完成字符串的逆序(在技术一轮面试中,有些面试官会这样问)#include "stdafx.h"void change(char *str) {for(int i=0,j=strlen(str)-1; i str ^= str[j] ^= str ^= str[j];}}int main(int argc, char* argv[]) {char str[] = "abcdefg";printf("strSource=%s\n"
IT公司笔试常考的算法题,标签:银行笔试题目,企业笔试题目,http://www.qz26.com

  char str1[] = "abractyeyt", str2[] = "dgdsaeactyey";

  char *strResult = MaxSubString(str1, str2);

  printf("str1=%s\nstr2=%s\nMaxSubString=%s\n", str1, str2, strResult);

  }

  24、不开辟用于交换数据的临时空间,如何完成字符串的逆序(在技术一轮面试中,有些面试官会这样问)

  #include "stdafx.h"

  void change(char *str) {

  for(int i=0,j=strlen(str)-1; i

  str ^= str[j] ^= str ^= str[j];

  }

  }

  int main(int argc, char* argv[]) {

  char str[] = "abcdefg";

  printf("strSource=%s\n", str);

  change(str);

  printf("strResult=%s\n", str);

  return getchar();

  }

  25、删除串中指定的字符(做此题时,千万不要开辟新空间,否则面试官可能认为你不适合做嵌入式开发)

  #include "stdafx.h"

  void delChar(char *str, char c) {

  int i, j=0;

  for(i=0; str; i++)

  if(str!=c) str[j++]=str;

  str[j] = '\0';

  }

  int main(int argc, char* argv[]) {

  char str[] = "abcdefgh"; // 注意,此处不能写成char *str = "abcdefgh";

  printf("%s\n", str);

  delChar(str, 'c');

  printf("%s\n", str);

  }

  26、判断单链表中是否存在环(网上说的笔试题)

  #include "stdafx.h"

  typedef char eleType; // 定义链表中的数据类型

  typedef struct listnode { // 定义单链表结构

  eleType data;

  struct listnode *next;

  }node;

  node *create(int n) { // 创建单链表,n为节点个数

  node *p = (node *)malloc(sizeof(node));

  node *head = p; head->data = 'A';

  for(int i='B'; i<'A'+n; i++) {

  p = (p->next = (node *)malloc(sizeof(node)));

  p->data = i;

  p->next = NULL;

  }

  return head;

  }

  void addCircle(node *head, int n) { // 增加环,将链尾指向链中第n个节点

  node *q, *p = head;

  for(int i=1; p->next; i++) {

  if(i==n) q = p;

  p = p->next;

  }

  p->next = q;

  }

  int isCircle(node *head) { // 这是笔试时需要写的最主要函数,其他函数可以不写

  node *p=head,*q=head;

  while( p->next && q->next) {

  p = p->next;

  if (NULL == (q=q->next->next)) return 0;

  if (p == q) return 1;

  }

  return 0;

  }

  int main(int argc, char* argv[]) {

  node *head = create(12);

  addCircle(head, 8); // 注释掉此行,连表就没有环了

  printf("%d\n", isCircle(head));

  }

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 


Tag:笔试题目银行笔试题目,企业笔试题目求职笔试面试 - 笔试题目
【字号: 】 【打印】 【关闭
最新更新
推荐热门
联系我们 | 网站地图 | 财务资料 | 范文大全 | 求职简历 | 财会考试 | 成功励志
Copyright 二六求职资料网 All Right Reserved.
1 2 3 4 5 6 7 8 9 10